Как принудительно перезагрузить файл php.ini?

Я настроил веб-сервер на прошлой неделе, он работал нормально.

Сегодня я запрашиваю его домашнюю страницу, я вижу ошибку часового пояса, так как ее нужно настроить в файл php.ini.

Я пытаюсь использовать phpinfo(); на своем веб-сервере, это дает мне:

Configuration File (php.ini) Path   /opt/rrh/php/lib 

Но файл php.ini не загружен.

Я исследую, файл php существует и имеет очень большие разрешения:

 ls -la /opt/rrh/php/lib   
 -rwxrwxrwx  1 apache root 68448 Nov 22 10:10 php.ini

Я пытаюсь parse_ini_file("/opt/rrh/php/lib/php.ini"));, он не возвращает ошибку...

Конечно, я перезапускаю свой сервер дюжину времени.

Что я могу сделать для решения моей проблемы?

Моя система:

  • Redhat 6
  • Apache 2.4
  • PHP 5.5.19 с libphp5.so модулем apache

Ответ 1

Чтобы принудительно перезагрузить php.ini, вы должны перезапустить apache.

Попробуйте sudo service apache2 restart из командной строки. Или sudo /etc/init.d/apache2 restart

Ответ 2

Вы также можете использовать изящный перезапуск сервера apache с помощью service apache2 reload или apachectl -k graceful. Поскольку apache doc говорит:

USR1 или изящный сигнал заставляют родительский процесс детям выходить после их текущего запроса (или немедленно выйти если они ничего не служат). Родитель перечитывает файлы конфигурации и повторно открыть свои файлы журналов. Поскольку каждый ребенок умирает родитель заменяет его дочерним по отношению к новому поколению конфигурации, которая немедленно начинает обслуживать новые запросы.