Сервер не обрабатывает .html как PHP
У меня есть код в моем файле .htaccess, но код php, который я пытаюсь включить, не работает.
Options +Includes
AddType text/html .htm .html
AddHandler server-parsed .htm .html
AddType application/octet-stream .vcf
AddOutputFilterByType DEFLATE text/html text/htm text/plain text/css text/php text/javascript application/x-javascript
Ответы
Ответ 1
Try:
AddType application/x-httpd-php .html .htm
ОБНОВЛЕНИЕ 1
Это может быть версия PHP. Если вы используете PHP5, попробуйте:
AddType application/x-httpd-php5 .html .htm
ОБНОВЛЕНИЕ 2
Try:
RemoveHandler .html .htm
AddType application/x-httpd-php .php .htm .html
Или еще один альтернативный способ сделать это:
<FilesMatch "\.html$">
ForceType application/x-httpd-php
</FilesMatch>
Ответ 2
В Apache 2.2.22 (Ubuntu) с Php 5 добавьте эти строки в /etc/apache2/mods-enabled/php5.conf
<FilesMatch ".+\.html$">
SetHandler application/x-httpd-php
</FilesMatch>
и перезапустите apache
sudo service apache2 restart
Ответ 3
Для гостевого хостинга godaddy (php-cgi):
Из http://sagarnangare.com/parse-html-as-php-using-htaccess-file-on-godaddy/
AddHandler fcgid-script .html
FCGIWrapper /usr/local/cpanel/cgi-sys/php5 .html
Это единственное, что сработало для меня.
Ответ 4
Если вы используете панель управления Plesk:
PHP работает как модуль Apache:
<IfModule mod_php5.c>
AddHandler php5-script .php .html .htm
AddType text/html .php .html .htm
</IfModule>
PHP работает как приложение FastCGI:
<IfModule mod_fcgid.c>
<Files ~ (\.html)>
SetHandler fcgid-script
FCGIWrapper /var/www/cgi-bin/cgi_wrapper/cgi_wrapper .html
Options +ExecCGI
allow from all
</Files>
</IfModule>
PHP работает как приложение CGI:
<Files ~ (\.html)>
SetHandler None
AddHandler php-script .html
Options +ExecCGI
allow from all
</Files>
Тогда
/usr/local/psa/admin/sbin/httpdmng --reconfigure-all
http://kb.odin.com/en/115773
Ответ 5
Если ваш сервер использует PHP5, используйте это:
AddHandler application/x-httpd-php5 .html .htm
Если это не PHP5, используйте
AddHandler application/x-httpd-php .html .htm
Он работал у меня на хостинге CPanel.
Если вы используете какой-либо другой хостинг linux, попробуйте следующее:
<IfModule mod_mime.c>
AddType application/x-httpd-php .html .php .htm
</IfModule>
Options +FollowSymlinks
Ответ 6
ОЧЕНЬ ВАЖНО, что вы должны заменить "php5" на вашу СОБСТВЕННУЮ точную версию PHP в:
AddHandler application/x-httpd-php5 .html .htm
AddType application/x-httpd-php5 .html .htm
Потому что я все время старался изо всех сил со всех сторон, но ничего не работал, пока я не нашел menupoint для "MultiPHP Manager" под моей CPanel, и под этим я узнал, что моя точная PHP-версия/имя/id (или независимо от того, что он называется) был "ea-php56", поэтому мой рабочий код:
AddHandler application/x-httpd-ea-php56 .html .htm
AddType application/x-httpd-ea-php56 .html .htm
Я просматривал весь день форумы, комментарии, но я не нашел эту очень важную информацию в любом месте, поэтому, возможно, вам также придется искать свою точную версию PHP, если она не работает!
Ответ 7
Для сервера Godaddy он работал у меня
Options +ExecCGI
AddHandler fcgid-script .html
FCGIWrapper /usr/local/cpanel/cgi-sys/php5 .html
Ответ 8
BenG, какое-нибудь решение когда-либо работало для вас?
это может помочь - я нашел эту тему запутанной, потому что любой оператор работал у меня в локальной локальной среде
AddHandler application/x-httpd-php .html .htm
or
AddType application/x-httpd-php .html .htm
после чтения документации apache по обеим директивам, кажется, что вы хотите использовать AddType при добавлении типа mime, еще не обработанного apache и AddHandler, если вы хотите, чтобы apache обрабатывал файл иначе, чем его обработка по умолчанию для этого типа файла. я могу ошибаться, но, похоже, это то, что говорится в руководстве.
поэтому, если вы хотите, чтобы apache обрабатывал .html и .htm, как если бы они были .php файлами, вы должны использовать директиву:
AddHandler application/x-httpd-php .html .htm
файл .htaccess, упомянутый выше, выполняет несколько действий, поэтому, возможно, вы можете сначала убедиться, что он действительно сообщает apache обрабатывать файлы .htm и .html, как если бы они были .php файлами; затем перейдите к другим директивам, которые вы хотите использовать.
Ответ 9
Из http://support.lunarpages.com/knowledge_bases/article/321
Как настроить Apache для обработки .html как PHP под suPHP? Вы необходимо удалить любые предыдущие записи для обработки файлов .html как PHP и вставьте следующее в свой .htaccess файл: AddHandler x-httpd-php.html.htm Или вы можете добавить это вручную используя Cpanel → Обработчики Apache → Новое: Расширение:.html.htm Обработчик: x-httpd-php Новейшие серверы cPanel на самом деле требуется следующее вместо этого: AddHandler application/x-httpd-php.html.htm или Приложение AddType/x-httpd-php.html.htm Попробуйте это, если первый тип не работает для вас для файлов.
Ответ 10
Не знаю, помогает ли это, но... Мой пример после часа поиска:
AddType application/x-httpd-php .php
LoadModule php5_module "c:/server/php5/php5apache2_2.dll"
ScriptAlias /_php/ "c:/server/php5/"
в httpd.conf
Без LoadModule и ScriptAlias он вообще не обрабатывал php и не показывал открытый текст
Ответ 11
Вы можете просто попытаться поместить только этот AddType php .html .htm
в ваш htaccess, если этот AddType application/x-httpd-php .html .htm
не работает.
Ответ 12
До того, как это произошло раньше, и что, вероятно, происходит, если никто из других не работает, вы читаете его как файл и не проходите через apache. Проверьте свою адресную строку и убедитесь, что она начинается с localhost, вашего ip, 127.0.0.1 или вашего доменного имени, если вы уже настроили его прямо на ваш сервер.
Ответ 13
Если вы пытаетесь запустить очень старый PHP-код, убедитесь, что у вас есть
short_open_tag = On
в php.ini
или даже лучше (потому что больше не рекомендуется использовать короткие открытые теги для нового кода), чтобы включить для конкретного виртуального хоста только через:
php_value short_open_tag On
в файле httpd.conf/.htaccess.
Ответ 14
упростить до 3 шагов:
Ответ 15
Добавление этого в .htaccess разрешило мою проблему, используя PHP 5.5:
AddType application/x-httpd-php .html
Ответ 16
Я использую выделенный сервер GoDaddy с Plesk. Вот что я должен использовать, чтобы заставить его работать:
AddHandler fcgid-script .htm
FCGIWrapper /var/www/cgi-bin/cgi_wrapper/cgi_wrapper .htm
Для фактического пути cgi_wrapper
обратитесь к файлу:
/var/www/vhosts/yourdomain.com/conf/last_httpd.include
или /etc/httpd/conf.d/php_cgi.conf
Ответ 17
Возможно, вы захотите добавить эту строку в свой файл .htaccess
:
AddHandler x-mapp-php6 .html .htm
Ответ 18
PHP работает с SuPHP:
<FilesMatch "\.html$">
SetHandler application/x-httpd-php
</FilesMatch>
Ответ 19
Приложение AddHandler/x-httpd-ea-php56.html.htm
Приложение AddType/x-httpd-ea-php56.html.htm
это сработало для меня!
Ответ 20
если вы хотите, чтобы URL для www.examle.com/page.php?id=123&lang=it в поисковой сети, как это, www.examle.com/it/1/2/3/pagina.html добавить в .htaccess
<Files it>
SetHandler php-script
</Files>
<Files ru>
SetHandler php-script
</Files>
и когда создаете файлы "it" "ru" в корневой директории web http следующим образом:
<?php
// www.examle.com/it
$lang="it";
include("urlrewrite.php");
?>
<?php
// www.examle.com/ru
$lang="ru";
include("urlrewrite.php");
?>
Ответ 21
Для PHP версии 5.6.40 запустите PHP как "FRM-приложение, обслуживаемое Apache" (Plesk), добавьте это в .httaccess
<FilesMatch "\.html$">
SetHandler php-script
</FilesMatch>
это работает для меня
Ответ 22
Я был озадачен в течение 2 -х часов, пока я не посмотрел в /etc/php/7.2/fpm/pool.d/www.conf
, а затем раскомментировать настройки безопасности, чтобы заставить PHP только разобрать PHP и добавил .html
так, чтобы линия теперь security.limit_extensions =.php.php3.php4.php5.php7.html
а затем sudo service php7.2-fpm restart
и выполните
<head>
</head>
<body>
This should show date here:
<?php echo date('l, F jS, Y'); ?>
</body>
и сохранен как test.html
работал нормально и отображается!