PHP Einstellungen auf MvA-Servern
Die aktuelle PHP Version auf den Linuxservern bei MvA ist 5.2.x. Die eigenen PHP-Einstellungen (der eigenen Homepage) findet man via Phpinfo(); Um dies auszugeben wird ein File namens phpinfo.php (oder ähnlich) erstellt. Mit folgendem Inhalt:
<? phpinfo(); ?>
Nachfolgend sind die wichtigsten Default-Einstellungen der PHP-Installationen bei MvA aufgelistet.
allow_url_fopen Off
Dateizugriffe auf externe URLs werden defaultmässig verweigert. Diese Einstellung verhindert, dass in der Url ein String ala (http:// oder ftp://) übergeben werden kann.
display_errors Off
Die Anzeige von PHP-Fehlermeldungen sind augeschaltet.
register_globals Off
Diese Setting steuert, ob Skripte Parameter aus der URL oder aus POST als globale Variablen übergeben bekommen oder nicht. Ein sehr hohes Mass an Gefährdung besteht hier bei nicht sauber programmierten PHP-Skripts.
open_basedir (vhosts/httpdocs)
Diese Einstellung definiert die Verzeichnisse, in welchen erweiterte Dateioperationen getätigt werden können (schreiben / lesen, etc). Diese Einstellung ist auf das httpdocs Verzeichnis limitiert.
safe_mode (Steuerung im PLESK-Panel)
PHP in einem speziell abgesicherten Modus laufen lassen. Hiermit ist der Zugriff auf System-Umgebungsvariablen und gewisse User-Berechtigungen, sowie auch Dateioperationen einschränken. Der Safemode ist meistens ziemlich ausreichend für PHP-Applikationen. Diese Einstellung lässt sich via “Setup” im PLESK-panel einstellen.
Nachfolgend ein Beispiel für ein zu erstellende (bei Bedarf) .htaccess File in dem httpdocs Verzeichnis. Es können pro Virtualhost die PHP-Einstellungen individuell angepasst werden. Dies ist ein .htaccess File auf einem Plesk Server für eine ziemlich komplex zu installierende CMS-Applikation. Im Unteren Teil findet man auch noch direkte Apache-Settings, wie Rewrite und sonstiges.
php_flag zend.ze1_compatibility_mode Off php_flag short_open_tag Off php_flag asp_tags Off php_flag output_buffering Off php_flag allow_call_time_pass_reference Off php_flag safe_mode Off php_value max_execution_time 30 php_value max_input_time 60 php_value memory_limit 64M php_flag register_globals Off php_flag register_long_arrays Off php_flag register_argc_argv Off php_value post_max_size 64M php_flag magic_quotes_gpc Off php_flag magic_quotes_runtime Off php_value default_mimetype text/html php_value default_charset utf-8 php_flag always_populate_raw_post_data Off php_flag file_uploads On php_value upload_max_filesize 64M php_flag allow_url_fopen On php_value default_socket_timeout 60 php_value session.save_handler files php_value session.save_path "/var/www/vhosts/xxxx.ch/httpdocs/var/session" php_flag session.use_cookies On php_flag session.use_only_cookies On php_value session.name xxxx php_value session.cookie_lifetime 0 php_value session.serialize_handler php php_value session.gc_probability 1 php_value session.gc_divisor 1000 php_value session.gc_maxlifetime 1440 php_flag session.use_trans_sid Off php_flag display_errors On php_flag display_startup_errors On php_value error_reporting 1015
php_flag assert.active On php_flag assert.warning On php_flag assert.bail Off php_value assert.callback assert_callback php_flag assert.quiet_eval Off php_value include_path ".:/var/www/vhosts/xxxx.ch/httpdocs/lib:/var/www/vhosts/xxxx.ch/httpdocs/lib/PEAR:"
AddDefaultCharset utf-8
IndexIgnore * Options -Indexes DirectoryIndex rewrite.php index.php index.html ErrorDocument 404 rewrite.php
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ rewrite.php?_url=$1&%{QUERY_STRING}
Geschrieben in Support




