好吧,我最近安装了Orbis CMS进行测试,我很喜欢它,除了两件事——这是其中之一。
测试页面"page.php"运行良好,很棒!将它合并到现有的html页面中,这就是我遇到问题的地方。Duhr,它不会运行php狙击坑。
Quick Google揭示了我需要在.htaccess文件中添加一段代码,以允许html文件运行php代码。试过了,什么都没有,根本不起作用。在这里关闭此链接(由Orbis提供):http://php.about.com/od/advancedphp/p/html_php.htm
当我对所有页面都这样做时,它开始做一些奇怪的事情,并要求我在点击整个网站的链接时下载/打开页面,但不是每个链接??当我为单个测试页做这件事时,它并没有完全停止工作。
有人有什么想法吗?
干杯。
为什么不将.htm文件重命名为.php?PHP文件中也可以有普通的HTML,就在<?php ?>
标记之外。
.htaccess必须被你的宿主允许,所以这可能是它不起作用的原因。
编辑:然后将.htm文件替换为重定向到.php文件。您可以通过<meta HTTP-EQUIV="REFRESH" content="0; url=http://www.yourdomain.com/yourfile.php">
实现这一点
或者,如果.htaccess由Web服务器运行,您可以在那里进行重定向:Redirect /youroldsite.htm yournewsite.php
(可能是更好的版本)
您需要将.html更改为.php。正如你所提到的。htaccess不起作用,检查这些东西,它可能会帮助你.htaccess已启用吗?
这很不寻常,但可能你的网站上没有启用.htaccess。如果你自己主持,修复起来很容易;在文本编辑器中打开httpd.conf,找到以下部分
你的DocumentRoot可能不同,当然是
# This should be changed to whatever you set DocumentRoot to.
#
<Directory "/var/www/htdocs">
#
找到读作..的行。。
AllowOverride None
并将其更改为.
AllowOverride All
重新启动Apache。现在,htaccess会起作用的。您也可以在虚拟主机中进行此更改,这通常是更可取的。
如果你的网站由其他人托管,请检查你的控制面板(Plesk.CPanel等),看看你是否可以在那里启用它,如果不能,请联系你的托管管理员。也许他们不允许这样做。在这种情况下,请切换到更好的web主机。
并检查rewrite_module是否标记为
将文件重命名为.php
或更改服务器配置以将.htm
文件识别为PHP文件。
示例(httpd.conf):
<IfModule php5_module>
AddType application/x-httpd-php .php .htm .html
</IfModule>
作为替代方案,您可以设置mod_rewrite
以路由到特定URL上的php文件。
您需要将.html
更改为.php
。你提到你需要保留从其他网站到你的.html
页面的链接权益。要解决此问题,只需在.htaccess
文件中添加一个301 redirect
即可。
//301 Redirect
Redirect 301 oldfile.html newfile.php