我一直在努力弄清楚目录的htaccess文件需要什么指令。为了提供一点背景知识,我一直在摆弄AddType和AddHandler,试图让html文件在其中运行php。我添加了如下指令:
AddType application/x-httpd-php .php .html
和
AddType application/x-httpd-php5 .php .html
这不起作用,所以我也尝试添加处理程序:
AddHandler x-httpd-php .php .html
和
AddHandler application/x-httpd-php .php .html
这仍然没有给我想要的,所以我尝试了很多组合,比如:
AddType application/x-httpd-php .php .html
AddHandler php-script .php .html
我甚至尝试了与SetHandler 的组合
AddType application/x-httpd-php .php .html
AddHandler php-script .php .html
SetHandler application/x-httpd-php .php html
我尝试了在网上找到的AddType和AddHandler的各种组合。
!=====这很重要====!我意识到让php运行你的html文件,这样你就可以在html中运行php,这不是一个好的做法。我不再试图那样做了。我在上面发布这一部分的唯一原因是让你了解我改变的一些事情。这些更改是对位于根目录上方的htaccess文件进行的。!==========================!
现在我不再尝试在html文件中运行php,我从htaccess文件中清除了AddType、AddHandler和SetHandler指令。但现在我在尝试运行php文件时遇到了一个内部服务器错误。
所以我试着把一些东西放回去。如果我有一个句柄,浏览器现在下载php而不是运行它
我应该注意,在我更改的目录下运行的任何php都可以正常工作。但是,该目录或该目录的子目录中的所有内容在php文件方面都有同样的问题。
我已经尝试删除该目录中的htaccess文件,但这不起作用,我得到了一个内部错误。
如果禁用"覆盖",则会出现内部错误。
我改变的东西是坚持在那个目录中,我想知道如何使用
a。把它关掉b.将正确的处理程序添加到htaccess文件中,以便php文件再次运行(就像它们在服务器的其他部分上一样)
我确实遇到了完全相同的问题,所以我删除了.htaccess的所有内容,并开始只使用处理程序进行尝试,直到我发现为止。我的本地.htaccess副本有以下SetHandler:
AddHandler x-httpd-php5-3 .php
在我的情况下,它在更改为后工作
AddHandler application/x-httpd-php5 .php
整个技巧似乎只是处理程序,我在两个不同配置的服务器上尝试了这个解决方案,在这两种情况下,只需更改AddHandler就可以了。如果这不适用于您,请尝试使用不同的php处理程序。
希望能有所帮助。
我刚刚意识到,在解决问题后,我没有回答这个问题。如果有人遇到类似的问题并正在阅读:请检查所有关联文件夹的权限。我记不清具体情况了,但其中一个目录(我相信是htaccess目录)的权限在更改了一些内容并将其更改回后仍然存在。