Конфигурирование PHP
Материал из 1GbWiki.
Версия 08:41, 14 августа 2008 (править) Teak (Обсуждение | вклад) (→SAPI (mod_php)) ← К предыдущему изменению |
Версия 08:02, 18 августа 2008 (править) (отменить) 81.1.243.193 (Обсуждение) (Категоризирована) К следующему изменению → |
||
Строка 77: | Строка 77: | ||
== Ссылки == | == Ссылки == | ||
* [http://ru2.php.net/manual/ru/ini.php Список параметров PHP] - документация на сайте разработчиков. | * [http://ru2.php.net/manual/ru/ini.php Список параметров PHP] - документация на сайте разработчиков. | ||
+ | |||
+ | [[Категория:Настройка программ]] |
Версия 08:02, 18 августа 2008
Конфигурирование PHP - это полное изменение или дополнение системных настроек интерпретатора PHP.
Внимание! На хостинге 1Gb.ru конфигурация PHP настроена таким образом, чтобы максимально обеспечить режим совместимости со всеми популярными скриптами и зачастую нет необходимости изменять предустановленные параметры.
Содержание |
Общие сведения
Известны три способа конфигурирования PHP.
- собственный php.ini (PHP работает в режиме CGI/FastCGI)
В данном случае свой php.ini ничем не отличается по синтаксису от системного.
Пример:
allow_url_fopen = On
post_max_size = 256M
register_globals = Off
error_reporting = E_ALL & ~E_NOTICE
- через файл конфигурации WEB-сервера Apache .htaccess (PHP работает в режиме модуля)
Основное отличие от предыдущего способа в том, что все параметры прописываются в файле .htaccess, отсутствует знак = и каждому параметру PHP предшествует специальное слово: php_value или php_flag.
- php_flag - указывается тогда, когда параметр PHP может принимать в качестве значения только истина или ложь (1 или 0, true или false, On или Off);
- php_value - указывается во всех остальных случаях, например, когда параметр PHP принимает цифровое, строковое значение;
Пример:
php_flag allow_url_fopen On
php_value post_max_size 256M
php_flag register_globals Off
php_value error_reporting 'E_ALL & ~E_NOTICE'
- через функцию PHP ini_set()
Вызов данной функции удобно располагать в каком-нибудь конфигурационном скрипте, например, там где прописаны параметры к БД. Подробнее см. описание данной функции на сайте разработчиков ini_set().
В зависимости от используемого типа WEB-сервера (IIS / Apache), а также платформы (Windows / UNIX), изменение конфигурации PHP может происходить тем или иным способом.
IIS/Windows
В такой конфигурации PHP работает только как CGI приложение.
- через собственный php.ini (изменения в него может вносить только тех. поддержка хостинга);
- через функцию ini_set();
Apache/Windows
На данной платформе PHP всегда работает как модуль к WEB-серверу Apache.
- через файл .htaccess;
- через функцию ini_set();
Изменения вступают в силу сразу.
Apache/UNIX
На данной платформе PHP может работать в трех режимах, нужный режим, равно как и тип используемого сервера можно выбрать в разделе личного кабинета /Управление сайтами и серверами/.
CGI
- через собственный конфигруационный файл, расположенный в .php/php.ini в корне вашего домашнего каталога;
Внимание! Собственный php.ini полностью перезаписывает системные настройки, т.о. указав в нем всего лишь одну директиву, вы сбросите в значения по-умолчанию и все остальные (это повлечет за собой отключение Zend Optimizer, ionCube и т.п.). Поэтому, вы можете скопировать в свой каталог .php общесистемный файл из /etc/php/php.ini и внести в него необходимые изменения.
- через функцию ini_set();
Изменения вступают в силу сразу в обоих случаях.
FastCGI
- полностью аналогично CGI, за исключением того, что изменения сделанные с помощью собственного php.ini вступают в силу в течение 1-3 часов (в зависимости от как скоро будет перезапущено FastCGI приложение);
Примечание. Можно ускорить вступление изменений в силу выполнив команду в шелл:
killall -q php >/dev/null 2>&1
mod_php
- полностью аналогично Apache/Windows;
Ссылки
- Список параметров PHP - документация на сайте разработчиков.