我问了一个问题,我是否可以将html文件作为php文件执行,我得到了那些答案
AddType application/x-httpd-php5 .php .html
和另一个答案
AddHandler application/x-httpd-php .html .htm
这是另一个
RemoveHandler .html .htm
AddType application/x-httpd-php .php .htm .html
我遇到了1个问题 当我以前写任何条件添加类型时,它会发送给我下载页面而不是运行它 例如,如果我有一个文件index.html有PHP代码 在我创建.htaccess并写入
之后RemoveHandler .html .htm
AddType application/x-httpd-php .php .htm .html
然后尝试导航它发送给我的链接下载index.html而不是运行它
答案 0 :(得分:3)
AddType用于将MIME类型分配给文件后缀。
F.e。覆盖PDF * sic的MIME类型
AddType text/plain .pdf
这将强制浏览器加载并以纯文本形式显示PDF,因为服务器正在发送text / plain MIMe类型。但是许多应用程序按内容处理文件而不是后缀。
RemoveHandler
这是不必要的,您不希望从标准配置中删除任何内容。
AddHandler handler-name .htm
这应该这样做,但这取决于您的服务器配置。你需要正确的“处理程序名称”。
安装了PHP的大多数Apache服务器的标准处理程序名称是
AddHandler application/x-httpd-php .html
AddHandler application/x-httpd-php .htm
但它可能有所不同,这取决于您的配置。如果您使用共享或托管主机而无法访问Apache配置文件,则应询问您的主机。
我使用的是像
这样的处理程序名称的共享主机AddHandler php4-cgi .php .html
or
AddHandler php52-cgi .php .html
and another was using totally different way like
AddType x-mapp-php5 .php .php5 .htm .html
否则请查看Apache配置文件。这个page可能有助于找到正确的部分并进行调整。
答案 1 :(得分:1)
你有没有尝试过:
AddHandler application/x-httpd-php5 .htm .html
答案 2 :(得分:0)
完全相同的问题,基本代码强制页面下载,但是这个:
AddHandler application/x-httpd-php5 .php .htm .html
...纠正了这个问题&工作得很好。
答案 3 :(得分:0)
如果您使用的是fcgi,则以上都不会起作用; 你需要
<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>