Назад | Перейти на главную страницу

Настройки на php.ini игнорируются

Я не могу заставить мой сервер подчиняться настройкам из php.ini (Я пытаюсь изменить memory_limit и upload_max_filesize). Насколько я могу судить, я редактирую правильный файл. phpinfo() дает:

Loaded Configuration File   /etc/php.ini

Разрешение файла 644. Есть также некоторые дополнительные .ini файлы на /etc/php.d, но ни один из них не содержит ключей, которые я пытаюсь изменить. Неважно что я делаю, phpinfo сообщает значения по умолчанию для столбцов «Локальный» и «Главный».

Я также просмотрел свои файлы конфигурации Apache, но не нашел ничего, связанного с PHP (кроме загрузки модуля PHP). Единственный способ изменить эти настройки - добавить несколько php_value линии к моему .htaccess.

Есть ли что-то очевидное, что мне не хватает?

Это виртуальный сервер, и я могу выполнять корневые команды с sudo. Я использую Apache 2.1.3 и PHP 5.3.3. Информация о системе (от uname -a) является:

 Linux sesctbapp01 2.6.18-308.1.1.el5 #1 SMP Wed Mar 7 04:16:51 EST 2012 x86_64

напишите на своем веб-сервере файл с именем test.php:

<? phpinfo(); ?>

Затем откройте его в своем браузере

есть раздел

Directive   Local Value Master Value

где вы видите значения всех переменных и где они установлены: Локальное значение означает установленное в .htaccess или внутри php-скрипта с помощью ini_set ()

также попробуйте http://php.net/manual/de/function.ini-get-all.php чтобы узнать источник содержания ваших переменных.

Однажды у меня была глупая ошибка, когда я попытался установить для upload_max_filesize значение 200M: я написал «200MB» в php.ini, но это должно быть просто «200M». php интерпретирует неправильное значение «200MB» как 0. Возможно, что-то из этого помогает

Бегать php -i в терминале, и он отметит, есть ли у вас какие-либо синтаксические ошибки в вашем php.ini. Такие ошибки заставляют Apache спокойно не анализировать (игнорировать) директивы.