«Перезаписать» настройки php.ini - PullRequest
2 голосов
/ 24 мая 2010

У меня есть папка, и для всех файлов php в этой папке (или даже лучше, в этой папке или любых папках внутри нее) я хотел бы внести некоторые изменения в настройки php. Могу ли я просто поместить файл php.ini в эту папку с настройками, которые я хотел бы изменить?

Если да, то какая причина, по которой эта не будет работать на меня? Это мой собственный сервер.

Спасибо!

edit: я хотел бы иметь возможность использовать локальный файл php.ini, как я мог сделать с несколькими веб-хостами. Это возможно?

Ответы [ 5 ]

3 голосов
/ 24 мая 2010

Похоже, что вы хотите использовать для каждого каталога php.ini файлы , которые доступны с PHP 5.3.Если это ваш собственный сервер, я хотел бы думать, что вы будете в курсе последних стабильных выпусков (в настоящее время 5.3.2).Вернемся к ini-файлам, чтобы процитировать эту страницу руководства:

Начиная с PHP 5.3.0, PHP включает поддержку INI-файлов в стиле .htaccess для каждого каталога.Эти файлы обрабатываются только CGI / FastCGI SAPI.Эта функция устаревает расширение PECL htscanner.Если вы используете Apache, используйте файлы .htaccess для того же эффекта.

В дополнение к основному файлу php.ini, PHP сканирует файлы INI в каждом каталоге, начиная с каталога запрошенного файла PHP,и работает до текущего корневого документа (как установлено в $ _SERVER ['DOCUMENT_ROOT']).Только INI-настройки с режимами PHP_INI_PERDIR и PHP_INI_USER будут распознаваться в INI-файлах в стиле .user.ini.

2 голосов
/ 24 мая 2010

Файлы .htaccess, как правило, являются наилучшим способом использования сервера Apache. Однако, чтобы ответить на ваш оригинальный вопрос, да, вы можете установить файл php.ini в каждом каталоге, если хотите. Однако для того, чтобы он работал, PHP должен быть настроен на работу как PHP-CGI. Я предполагаю, что вы используете PHP как модуль Apache.

См. Эту ссылку для справки о том, где PHP ищет php.ini и когда его ищет: http://www.php.net/manual/en/configuration.file.php

2 голосов
/ 24 мая 2010

Для этого вам понадобится файл .htaccess.В руководстве PHP есть раздел об этом:

http://php.net/manual/en/configuration.changes.php

Для получения более общей информации о файлах htaccess вы можете прочитать:

http://en.wikipedia.org/wiki/Htaccess

или

http://httpd.apache.org/docs/2.0/howto/htaccess.html

1 голос
/ 24 мая 2010

Вы также можете использовать ini_set(), если хотите сделать это в коде.

0 голосов
/ 24 мая 2010

вместо изменения файла php.ini для каждой папки вам потребуется изменить файл .htaccess. Храните файл в папках с любыми настройками, которые вам нравятся. Вы не можете сделать это с файлом php.ini, так как изменения в php.ini считаются серверными

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...