Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I am using PHP FastCGI SAPI on my web hosting environment to run PHP applications. To spawn FCGI processes I use spawn-fcgi helper program. My problem is whenever I make a change to php.ini file, I have to kill and respawn each FastCGI server for the new configuration to take effect.

Is there a way to reload PHP configuration(ie. php.ini directives) without respawning each FastCGI server? I try sending hangup signal (ie. kill -HUP PHPCGIPID) to the servers but this will result in termination of the servers.

share|improve this question
add comment

3 Answers

up vote 1 down vote accepted

As far as I know, PHP's FastCGI interpreter doesn't react to signals like HUP, USR1 or USR2 to reload its configuration.

Maybe PHP-FPM could help you to achieve what you want. On the downside, it requires patching PHP.

share|improve this answer
1  
As of PHP 5.3.3, patching is no longer required. –  E. Yazici Jul 27 '11 at 19:29
add comment

If the servers are spawned automatically, kill them. If they’re manually started, restart them. PHP doesn’t have the ability to reload its own configuration — and generally, killing/restarting is not a problem. Is there a reason why you can’t kill them in this instance?

share|improve this answer
add comment

If you user PHP5 try this

sudo /etc/init.d/php5-fpm reload

Otherwise

sudo /etc/init.d/php-fpm reload

This command will restart server gracefully without closing existing connections.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.