Startseite  »  Support  »  PHP Einstellungen auf MvA-Servern

25. Mai 2010

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}

Kommentar hinterlassen

*