2015-05-22 3 views
0

У меня возникают проблемы с .htaccess, в частности, с изменением значения include_path. На моем Dev сервере PHP побежал как модуль, так что я могу использовать:Условный .htaccess на основе API-сервера Apache

php_value include_path "/whatever/path/i/want" 

Теперь, когда я мигрировал на реальный сервер, PHP побежал, как CGI/FastCGI, поэтому мой последний трюк не работает, так я узнал трудный путь, и получил все работает, используя Apache обработчиков поэтому он загружает пользовательские php.ini с включаемым путем он изменился:

AddHandler php5-fastcgi .php 
Action php5-fastcgi /cgi-bin/php.fcgi 

Теперь здесь возникает вопрос. Мне нужен блок кодирования для каждого случая, поэтому он использует обработчик, если он выполняется как CGI/FastCGI или php_value, если он является модулем.

Обнаружено это для fastcgi, но не заставило его работать.

<IfModule fastcgi_module> 
    AddHandler php5-fastcgi .php 
    Action php5-fastcgi /cgi-bin/php.fcgi 
</IfModule> 

Если есть другой способ include_path изменить в обоих случаях, не в зависимости от того, как выполняется PHP, а не жестко прописывать его в код, будет много aprecciated.

ответ

0

.user_ini файл должен помочь вам в случае использования CGI/FastCGI. Обычно он игнорируется для mod_php.

0

Спасибо, что ответили, что я решил свою проблему следующим образом.

<IfModule mod_php5.c> 
    php_value include_path "path/I/want" 
</IfModule> 
<IfModule !mod_php5.c> 
    AddHandler php5-fastcgi .php 
    Action php5-fastcgi /cgi-bin/php.fcgi 
</IfModule> 

В любом случае, я не знал о пользователе.ini, но его хорошо знать, существует другое решение.

Смежные вопросы