Когда для настройки PHP нужно пользоваться файлом .htaccess, а когда — php.ini?Если на сервере PHP работает как CGI,то настройки php нужно указывать в собственном файле php.ini, который нужно создать в домашней директории - /home/имя_пользователя. Данная директория открывается по умолчанию при обращении к файл-менеджеру DirectAdmin. Настройки указываются в соотвествии с синтаксисом php.ini.
Если PHP работает как модуль Apache, настройки PHP следует указывать в файле .htaccess, расположенном в домашней директории сайта — public_html, с помощью префиксов php_flag и php_value. Если файл .htaccess отсутствует, его нужно создать. Если файл имеется, настройки можно дописать в конец файла.
Как у вас работает PHP?Это можно узнать по ссылке
http://forum.buxarnet.ru/index.php/topic,1187.0.htmlВ чем заключаются различия синтаксиса .htaccess и php.ini?Синтаксис директив настроек интерпретатора PHP для php.ini будет иметь вид:
option = value
В .htaccess директивы настроек PHP задаются с помощью префиксов php_value (для числовых значений) и php_flag (для логических значений, on/off или 1/0), символ «=» не нужен.
Синтаксис для .htaccess будет таким:
php_flag option off (on)
php_value option value
Какие директивы PHP я могу настраивать на хостинге?На сайте php.net приведён список директив PHP, которые Вы можете настраивать. Вы можете использовать лишь те директивы, которые обозначены параметрами PHP_INI_SYSTEM и PHP_INI_PERDIR. Настраивать PHP нужно в соответствии с синтаксисом php.ini и .htaccess, в зависимости от режима работы PHP на сервере. Если у Вас возникнут затруднения, Вы можете в любое время обратиться за помощью в нашу службу поддержки клиентов, любым удобным для Вас способом.
Как включить параметр register_globals?По умолчанию в 5-й версии PHP данный параметр отключен. Некоторые скрипты (как правило, написанные для ранних версий PHP) требует включения данной директивы.
Для .htaccess директива будет выглядеть так:
php_flag register_globals on
Для php.ini (PHP работает как CGI) директива будет иметь другой вид:
register_globals = 1
Как включить параметр allow_call_time_pass_reference?Бывает, что при установке некоторые CMS и другие скрипты (типичный пример — «1С-Битрикс») требуют включить параметр php.ini allow_call_time_pass_reference.
Для .htaccess директива будет выглядеть так:
php_flag allow_call_time_pass_reference on
Для php.ini (PHP работает как CGI) директива будет иметь другой вид:
allow_call_time_pass_reference = 1
Как сменить часовой пояс в настройках PHP?Довольно часто возникает необходимость настройки местного времени для определенных задач. К примеру, Вы хотите настроить киевское время, сделать это можно следующим образом, задав директивы:
для .htaccess:
php_value date.timezone Europe/Kiev
для php.ini:
date.timezone = Europe/Kiev
Почему после редактирования .htaccess сервер выдает 500 ошибку?Наиболее частые причины 500-й (Internal Server Error) ошибки:
- неверный синтаксис .htaccess (к примеру использование php_flag и php_value при работе PHP как CGI);
- файл .htaccess записан в формате Windows, а должен быть записан в формате Unix.