.png)
Ich habe hier auf serverFault viel gesucht und diese Lösung gefunden …
Das Einbinden in den virtuellen Host sollte funktionieren:
php_admin_flag register_argc_argv = On
php_value max_execution_time = 1000
php_value session.gc_maxlifetime = 15000
php_admin_flag magic_quotes_gpc = on
Aber dann dämmerte es mir, ich verwende mod_php überhaupt nicht. Ich habe php-fpm installiert. Und ich kann wirklich keine Informationen darüber finden, ob meine Methode funktioniert oder ob es einen alternativen Weg gibt ...
Was mache ich also, wenn ich php-fpm habe und andere Einstellungen für den virtuellen Host haben möchte?
S.
Antwort1
Bei php-fpm legen Sie dies normalerweise im FPM-Pool der Domäne fest. Die Pools sind in der Hauptkonfigurationsdatei von php-fpm enthalten, die sich auf meinem Server unter folgender Adresse befindet /etc/php/fpm-php5.3/php-fpm.conf
:
...
;;;;;;;;;;;;;;;;;;;;
; Pool Definitions ;
;;;;;;;;;;;;;;;;;;;;
include=/var/www/*/conf/fpm-pool.conf
In der fpm-pool-config können Sie php_admin_flag
Folgendes einstellen php_admin_value
:
...
; php_value/php_flag - you can set classic ini defines which can
; be overwritten from PHP call 'ini_set'.
; php_admin_value/php_admin_flag - these directives won't be overwritten by
; PHP call 'ini_set'
php_flag[display_errors] = on
php_admin_value[error_log] = /var/www/cloud/logs/php_err.log
php_admin_flag[log_errors] = on
php_admin_value[memory_limit] = 1024M
#php_value[max_execution_time] = 30
php_admin_value[upload_max_filesize] = 4G
php_admin_value[post_max_size] = 4.2G
php_admin_value[max_input_time] = 3600
php_admin_value[max_execution_time] = 3600
Antwort2
Ich hatte einen RAM-hungrigen Server und wollte vermeiden, für jede meiner Websites mit wenig Datenverkehr mehrere Pools zu konfigurieren. Außerdem gefielen mir die Sicherheitsbedenken bei verzeichnisbasierten .user.inis nicht, also implementierte ich eine andere Lösung mit php.ini-„Abschnitten“:
Sie können Abschnitte von php.ini (in meinem Fall /etc/php5/fpm/php.ini) definieren, die entweder pfad- oder hostspezifisch sind. Ganz unten habe ich:
[HOST=host1.example.com]
auto_prepend_file = '/var/www/something'
[HOST=host2.example.net]
upload_max_filesize = 5M
Ich habe woanders gelesen, dass Sie, wenn Sie die Host-Methode verwenden, den spezifischen Wert verwenden müssen, der in der VirtualHost-Konfiguration unter „ServerName“ definiert ist, und keinen der Aliase.
PS Dies wurde alles auf Debian Jessie 8.4 durchgeführt
Antwort3
Sie können diese Flags in eine .htaccess-Datei unter jedem virtuellen Host einfügen, für den Sie diese Einstellungen wünschen. Siehe:http://www.php.net/manual/en/configuration.file.per-user.php
Antwort4
Verwenden Sie für Nginx diese Lösung:
Da Sie diesen Befehl in Ihrer -vhost-Datei PHP 5.3.3
verwenden können .nginx
Beispiel zum Festlegen der Anzahl maxlifetime
von Sitzungen:
server {
listen 80;
listen [::]:80;
...
location ~ \.php$ {
...
fastcgi_param PHP_VALUE "session.gc_maxlifetime=604800";
fastcgi_param PHP_VALUE "session.cookie_lifetime=604800";
}
}