Конфигурирование PHP

Материал из 1GbWiki.

(Различия между версиями)
Перейти к: навигация, поиск
Версия 14:26, 10 декабря 2008 (править)
92.48.203.122 (Обсуждение)
(IIS/Windows)
← К предыдущему изменению
Текущая версия (08:49, 15 февраля 2018) (править) (отменить)
Renton (Обсуждение | вклад)
(Собственный php.ini (если PHP работает в режиме CGI/FastCGI))
 
(64 промежуточные версии не показаны)
Строка 7: Строка 7:
-http://whitesquirrelshoppe.com/showthread.php?f=72&s=72225 Wecker D-02 http://whitesquirrelshoppe.com/showthread.php?f=20&s=78640 Wicked Blend Lyrics http://vinsynch.com/showthread.php?f=69&s=54179 Sta-kon Lug Wt-110 M Mil-c-22520 24-0 http://wibbleware.com/showthread.php?f=79&s=60103 Muh2012 Fsu Music Bernstein http://whatchusay.com/showthread.php?f=31&s=73113 Katie Mcarthur And Portland http://xcitebattery.com/showthread.php?f=61&s=36162 Vauxhall Duel Fuel Lpg Cutting Out http://uminc.com/showthread.php?f=15&s=66143 Max Of The South Shore http://wheelspin.net/showthread.php?f=68&s=44555 Lg 19 In Computer Monitor http://whitesquirrelshoppe.com/showthread.php?f=8&s=76293 When Rick Hansen Did http://twochefsfood.com/showthread.php?f=22&s=83396 Spine Center Iowa http://wbcpsy.com/showthread.php?f=52&s=86036 Vinyl Graphics Checker http://willrafuse.com/showthread.php?f=97&s=59705 Iowa Medicaid Drug Formulary http://wbcpsy.com/showthread.php?f=17&s=84305 Vertical Axis Experimental Wind Turbines Nm http://whiteserv.com/showthread.php?f=7&s=20569 Richard Conn http://triregionracing.org/showthread.php?f=9&s=86089 Uk Statutes Online http://wheelspin.net/showthread.php?f=64&s=43970 Lesson Plan Layout For Resource Room http://visionimprovementsite.com/showthread.php?f=52&s=76770 Mystique Halloween X-men http://voteoutanders.com/showthread.php?f=1&s=28886 Lyrics For Hydraulics By B5 http://listsrlabels.com/showthread.php?f=89&s=36015 By The Numbers Nymets http://twochefsfood.com/showthread.php?f=53&s=89622 Stripping Webcams Teen Videos+== Общие сведения ==
-http://willrafuse.com/showthread.php?f=22&s=62281 Jack's Death http://voteoutanders.com/showthread.php?f=86&s=19854 Lehigh Work Boots http://visionimprovementsite.com/showthread.php?f=91&s=79206 Nature Photonics http://xcitebattery.com/showthread.php?f=35&s=36079 Varta Plastic http://whiteserv.com/showthread.php?f=6&s=25119 Royal Crown Cola Bottle Factories http://uminc.com/showthread.php?f=75&s=70847 Mh3184xpb http://wdcsolutions.com/showthread.php?f=46&s=32615 Stepco Strand Woven http://uminc.com/showthread.php?f=89&s=66835 Mcdonald's Calorie Guide http://yorkregionparrotclub.ca/showthread.php?f=32&s=45489 Met-art Princess http://wbcpsy.com/showthread.php?f=67&s=80657 Usb Disk Dane Driver 98 http://wibbleware.com/showthread.php?f=84&s=56847 Moonshine Musuems http://listsrlabels.com/showthread.php?f=16&s=30261 Brandt Tractor Winnipeg http://virtualproductmall.com/showthread.php?f=80&s=36229 Cable Tv Sites http://whitesquirrelshoppe.com/showthread.php?f=58&s=75922 What Workers Compensation Insurance Covers http://yorkregionparrotclub.ca/showthread.php?f=92&s=47944 Midhudson Athletic Club Kingston http://wdcsolutions.com/showthread.php?f=79&s=26252 Sophomore Muscle http://visionimprovementsite.com/showthread.php?f=92&s=77771 Nancy Matthews Avon Products http://twochefsfood.com/showthread.php?f=93&s=86053 Star Theater Auburn Hills Mi http://listsrlabels.com/showthread.php?f=80&s=28596 Boot Stores In Austin Texas http://wibbleware.com/showthread.php?f=64&s=58078 Motorcycle Accidents Pembroke Pines+Известны три способа конфигурирования PHP.
-== Apache/Windows ==+ 
 +=== Через .htaccess (если PHP работает в режиме модуля к Apache) ===
 +Параметры прописываются в файле .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'
 +<br />
 +<br />
 + 
 +=== Через функцию PHP ''ini_set()'' ===
 +Вызов данной функции удобно располагать в каком-нибудь конфигурационном скрипте, например, там где прописаны параметры к БД.
 +Подробнее см. описание данной функции на сайте разработчиков [http://php.net/ini_set ''ini_set()''].
 + 
 +'''Пример:'''
 +
 + ini_set('display_errors', '1');
 +<br />
 +<br />
 + 
 +=== Собственный php.ini (если PHP работает в режиме CGI/FastCGI) ===
 +'''Пример:'''
 + 
 + allow_url_fopen = on
 + post_max_size = 256M
 + magic_quotes_gpc = on
 + magic_quotes_runtime = off
 + register_globals = on
 + error_reporting = E_ALL & ~E_NOTICE
 + 
 +Собственный php.ini не дополняет настройки системного php.ini, поэтому прописав в своем php.ini только одну строку, все остальные параметры будут сброшены в значение по умолчанию. Чтобы этого не произошло, нужно скопировать системный php.ini в свой домашний каталог и уже в него вносить изменения. Скопировать правильный php.ini можно такой командой в консоли SSH:
 + $ <nowiki>cp -v /opt/hostpublic/etc/php$(awk '/exec/ {system ($2" -v | grep -m 1 -o \"[[:digit:]]\\.[[:digit:]]\\+\"")}' ~/.fast-php/fast-php)_aux1/php.ini ~/.php/</nowiki>
 +<br />
 +<br />
 + 
 +== Как и где менять ==
 + 
 + 
 +=== Windows / IIS ===
 +В такой конфигурации PHP работает только как CGI приложение.
 +* через собственный php.ini (изменения в него может вносить только [http://www.1gb.ru/about_support.php тех. поддержка хостинга]);
 +* через функцию ''ini_set()'';
 + 
 + 
 +=== Windows / Apache ===
На данной платформе PHP всегда работает как модуль к WEB-серверу Apache. На данной платформе PHP всегда работает как модуль к WEB-серверу Apache.
Строка 18: Строка 66:
Изменения вступают в силу сразу. Изменения вступают в силу сразу.
-== Apache/UNIX==+ 
 +=== UNIX / Apache ===
На данной платформе PHP может работать в трех режимах, нужный режим, равно как и тип используемого сервера можно выбрать в разделе личного кабинета /Управление сайтами и серверами/. На данной платформе PHP может работать в трех режимах, нужный режим, равно как и тип используемого сервера можно выбрать в разделе личного кабинета /Управление сайтами и серверами/.
-=== CGI === 
-* через собственный конфигруационный файл, расположенный в .php/php.ini в корне вашего домашнего каталога; 
----- 
-'''Внимание!''' Собственный php.ini полностью перезаписывает системные настройки, т.о. указав в нем всего лишь одну директиву, вы сбросите в значения по-умолчанию и все остальные (это повлечет за собой отключение Zend Optimizer, ionCube и т.п.). Поэтому, вы можете скопировать в свой каталог .php общесистемный файл из /etc/php/php.ini и внести в него необходимые изменения. 
----- 
 +===== UNIX / Apache - mod_php =====
 +* через файл .htaccess;
* через функцию ''ini_set()''; * через функцию ''ini_set()'';
-Изменения вступают в силу сразу в обоих случаях.+Изменения вступают в силу сразу.
 +<br />
 +<br />
 + 
 +===== UNIX / Apache - CGI/FastCGI =====
 +* через функцию ''ini_set()'';
 +* через собственный php.ini, расположенный в ~/.php/php.ini
 +<br />
 + 
 +'''ВНИМАНИЕ!''' Собственный php.ini полностью перезаписывает системные настройки, указав в нем всего лишь одну директиву, вы сбросите все установки PHP в исходное состояние, например, это повлечет за собой отключение Zend Optimizer, ionCube и т.п.). Чтобы этого не произошло, нужно скопировать системный php.ini в свой домашний каталог и в него вносить изменения. Скопировать можно такой командой:
 + $ <nowiki>cp -v /opt/hostpublic/etc/php$(awk '/exec/ {system ($2" -v | grep -o \"5\\.[[:digit:]]\\+\"")}' ~/.fast-php/fast-php)_aux1/php.ini ~/.php/</nowiki>
 + 
 +<br />
 +Изменения вступают в силу '''в течение 15 минут'''.
 +<br />
 +<br />
 +''Примечание''. Можно ускорить вступление изменений в силу выполнив команду в шелле:
 + $ killall -9 php php-cgi
 +<br />
 + 
 +===== PROSTO.1Gb.ru =====
 +* через функцию ini_set();
-=== FastCGI ===+Далеко не все параметры можно изменить через <code>ini_set</code>, поэтому если настройки тарифного плана Вам не подходят, то необходимо установить тариф обычного хостинга.<br />
-* полностью аналогично '''CGI''', за исключением того, что изменения сделанные с помощью собственного php.ini вступают в силу в течение 1-3 часов (в зависимости от как скоро будет перезапущено FastCGI приложение);+
-''Примечание''. Можно ускорить вступление изменений в силу выполнив команду в шелл:<br />+Также посмотрите эту статью [[Эмуляция auto prepend file на prosto.1gb.ru]]
-<code>killall -q php >/dev/null 2>&1</code>+<br />
-=== mod_php ===+== См. также ==
-* полностью аналогично '''Apache/Windows''';+* [[Юникс шелл]]
== Ссылки == == Ссылки ==
-* [http://ru2.php.net/manual/ru/ini.php Список параметров PHP] - документация на сайте разработчиков.+* [http://www.1gb.ru/default.aspx?ti=6&hti=36 Проблема тайм-аута при http upload] (рус.) - статья в базе знаний хостинга 1Gb.ru.
 +* [http://www.1gb.ru/default.aspx?ti=6&hti=23 Конфигурирование PHP через .htaccess] (рус.) - статья в базе знаний хостинга 1Gb.ru.
 +* [http://ru.php.net/manual/en/ini.list.php Список параметров PHP] (англ.) - документация на сайте разработчиков.
-[[Категория:Настройка программ]]+[[Категория:Программирование]]
 +[[Категория:Начинающим]]
 +[[Категория:WEB-сервер IIS]]
 +[[Категория:WEB-сервер Apache]]
 +[[Категория:PHP]]

Текущая версия

Конфигурирование PHP - это полное изменение или дополнение системных настроек интерпретатора PHP.



Внимание! На хостинге 1Gb.ru конфигурация PHP настроена таким образом, чтобы максимально обеспечить режим совместимости со всеми популярными скриптами и зачастую нет необходимости изменять предустановленные параметры.



Содержание

[править] Общие сведения

Известны три способа конфигурирования PHP.


[править] Через .htaccess (если PHP работает в режиме модуля к Apache)

Параметры прописываются в файле .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().

Пример:

ini_set('display_errors', '1');



[править] Собственный php.ini (если PHP работает в режиме CGI/FastCGI)

Пример:

allow_url_fopen      = on
post_max_size        = 256M
magic_quotes_gpc     = on
magic_quotes_runtime = off
register_globals     = on
error_reporting      =  E_ALL & ~E_NOTICE

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

 $ cp -v /opt/hostpublic/etc/php$(awk '/exec/ {system ($2" -v | grep -m 1 -o \"[[:digit:]]\\.[[:digit:]]\\+\"")}' ~/.fast-php/fast-php)_aux1/php.ini ~/.php/



[править] Как и где менять

[править] Windows / IIS

В такой конфигурации PHP работает только как CGI приложение.


[править] Windows / Apache

На данной платформе PHP всегда работает как модуль к WEB-серверу Apache.

  • через файл .htaccess;
  • через функцию ini_set();

Изменения вступают в силу сразу.


[править] UNIX / Apache

На данной платформе PHP может работать в трех режимах, нужный режим, равно как и тип используемого сервера можно выбрать в разделе личного кабинета /Управление сайтами и серверами/.


[править] UNIX / Apache - mod_php
  • через файл .htaccess;
  • через функцию ini_set();

Изменения вступают в силу сразу.

[править] UNIX / Apache - CGI/FastCGI
  • через функцию ini_set();
  • через собственный php.ini, расположенный в ~/.php/php.ini


ВНИМАНИЕ! Собственный php.ini полностью перезаписывает системные настройки, указав в нем всего лишь одну директиву, вы сбросите все установки PHP в исходное состояние, например, это повлечет за собой отключение Zend Optimizer, ionCube и т.п.). Чтобы этого не произошло, нужно скопировать системный php.ini в свой домашний каталог и в него вносить изменения. Скопировать можно такой командой:

$ cp -v /opt/hostpublic/etc/php$(awk '/exec/ {system ($2" -v | grep -o \"5\\.[[:digit:]]\\+\"")}' ~/.fast-php/fast-php)_aux1/php.ini ~/.php/


Изменения вступают в силу в течение 15 минут.

Примечание. Можно ускорить вступление изменений в силу выполнив команду в шелле:

$ killall -9 php php-cgi


[править] PROSTO.1Gb.ru
  • через функцию ini_set();

Далеко не все параметры можно изменить через ini_set, поэтому если настройки тарифного плана Вам не подходят, то необходимо установить тариф обычного хостинга.

Также посмотрите эту статью Эмуляция auto prepend file на prosto.1gb.ru

[править] См. также

[править] Ссылки

Личные инструменты