Everything's been working perfectly for days, but I need to make a config change to the php.ini. Specifically, I need to work out why a login page is doing an endless redirect loop in nginx, where it worked fine in Apache (.htaccess is not relevant here).
Here's what I put in the php.ini config section in ISPC:
date.timezone = "UTC"
error_reporting = "E_ALL";
display_errors = On
display_startup_errors = Off
log_errors = On
ignore_repeated_errors = Off
ignore_repeated_source = Off
error_log = error_log
post_max_size = 28M
session.gc_maxlifetime = 604800
upload_max_filesize = 28M
and here's what appears in the php5 pool.d/web1.conf file:
php_admin_value[date.timezone] = "UTC"
php_admin_value[error_reporting] = "E_ALL"\;
php_admin_flag[display_errors] = off
php_admin_flag[display_startup_errors] = off
php_admin_flag[log_errors] = off
php_admin_flag[ignore_repeated_errors] = off
php_admin_flag[ignore_repeated_source] = off
php_admin_value[error_log] = error_log
php_admin_value[post_max_size] = 28M
php_admin_value[session.gc_maxlifetime] = 604800
php_admin_value[upload_max_filesize] = 28M
Notice how the "on" has become "off" and the case changed?
But more than that, it doesn't restart php5-fpm, so those values don't "take".
By going into a shell and issuing "service php5-fpm restart", then it works.
If I manually make than change in the file, then it WILL stick, but then of course it's out of synch with ISPC control panel, so as soon as I make another change, it gets overwritten. Phew!
But I also noticed when I restart php5-fpm after making a change, or leaving it for a few minutes, that it takes about 30 seconds to restart. But when I do it straight after the restart, it's instant. I watched free and top in another window, and it wasn't running out of memory.
In case it matters, following multiple articles about managing fpm on vps with limited memory, I made the following changes in ISPC which look like this in the log:
pm = dynamic
pm.max_children = 4
pm.start_servers = 1
pm.min_spare_servers = 1
pm.max_spare_servers = 2
This is actually perfectly adequate for my needs, and greatly reduced the fpm footprint - I only have 2 sites anyway.
And finally.... phpinfo says the error log is in /usr/error_log - seeing as I've got reporting turned to "all", and when I put it to display errors I get loads, I'm surprised to see the error log doesn't even exist.