htaccess文件和处理程序的问题?

时间:2011-08-19 20:40:06

标签: php .htaccess

我问了一个问题,我是否可以将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而不是运行它

4 个答案:

答案 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>