我一直在一个共享服务器上托管我用PHP编码的网站。该网站工作得很好。所以最近我将它迁移到一个新的Web托管服务,之后服务器开始逐字地将php脚本/文件的内容输出到Web浏览器!
.htaccess
文件已如此配置(将htm
文件解析为php
):
<Files index.htm>
AddType application/x-httpd-php .htm
</Files>
知道它为什么不解析它们?
PS。我也很好奇如何防止将来以纯文本形式将PHP脚本输出到客户端浏览器?
答案 0 :(得分:0)
验证您的新网络托管服务是否允许您使用.htaccess
个文件。一些托管公司出于安全考虑而禁用该功能。
答案 1 :(得分:0)
确保http.conf
包含PHP MIME类型。即,确保你有这一行,并且没有注释掉:
AddType application/x-httpd-php .php
还要确保启用AllowOverride
AllowOverride All
答案 2 :(得分:0)
也许您的新托管服务提供商不允许使用短打开标签并使用它们?
如果您将<? echo "Hello world"; ?>
放在hello.php
中,文件是否已被解析?如果不是,请尝试将<?
替换为<?php
,然后重试。
答案 3 :(得分:0)
除非你只想解析index.htm
,否则你不应该把它
<Files index.htm>...</Files>
指令内的AddType指令。
您实际需要的是AddHandler而非AddType 把这一行放在你身上.htaccess:
AddHandler application/x-httpd-php .htm .html
注意:application/x-httpd-php
既是内容类型,也是PHP的处理程序名称
答案 4 :(得分:0)
刚刚修好了。我的.htaccess
文件应该是这样的:
<Files index.htm>
AddType application/x-httpd-php52 .htm
</Files>
我没有意识到它必须如此具体。