Правило htaccess для разбора php в html файлах не работает

Не могу на всю жизнь понять, почему это не работает - на сервере Dreamhost я создал файл htaccess и добавил AddHandler php5-cgi .html .htm разрешить php в html-файлах, согласно документам dreamhost. На идентичном пакете Dreamhost я сделал то же самое для другого сайта, и он работал отлично, но в этом случае он просто не будет анализировать php! Могу ли я что-то упустить здесь, что может быть причиной проблемы? Htaccess находится в корне сети и не переопределяется ничем другим.

4 ответа

Решение

Ваш сервер использует suPHP, а не mod_php или обычный php-cgi?

Попробуйте использовать

AddHandler x-httpd-php .html .htm

или же

AddType application/x-httpd-php .html .htm

вместо.

постскриптум

Службы общего хостинга используют разделение на основе UID для отдельных учетных записей друг от друга. Большинство используют suPHP, но некоторые используют suEXEC. Они будут использовать один из них. Оба действуют как обертка su вокруг php-cgi, поэтому вы не можете сказать из phpinfo(), как его движок PHP-скриптинга, так как это сообщит Server APICGI/FastCGI в обоих случаях. Для сценариев, инициируемых CGI, phpinfo не сообщает о конфигурации Apache. Вам нужно посмотреть FAQ вашего хостинг-провайдера или попробовать:

 <?php
 header( "Content-Type: text/plain");
 echo system('grep -iR LoadModule /etc/httpd /etc/apache2');

Форумы поддержки / FAQ хостинг-провайдера могут дать конкретные советы по настройке здесь. Вы пробовали их?

Попробуй это

  AddType application/x-httpd-php .html .htm

Вышеуказанная настройка будет работать, если apache выбирает php как модуль.

 AddHandler application/x-httpd-php .html .htm

или же

 AddHandler application/x-httpd-php5 .html .htm

выше будет работать, если Apache выполняет PHP как CGI?

я бы сказал, что нет ничего плохого в том, чтобы соединить оба вышеупомянутых условия, но попробовать одно над другим и посмотреть, сработает ли это для вас.

читать больше здесь

У меня та же проблема, что и у вас, но я просто поставил это AddType php .html .htm к моему.htaccess, это работает.

Для меня это работает только так:

AddHandler php-cgi .php .htm
Другие вопросы по тегам