为什么我的php行不能在我的html文件中运行?

时间:2012-03-22 07:23:34

标签: php html css xhtml content-management-system

好的,所以我最近安装了测试Orbis CMS,我喜欢它,除了两件事 - 这是其中之一。

测试页'page.php'运行正常,太棒了!将其纳入现有的html页面,这就是我遇到问题的地方。 Duhr,它不会运行php snippits。

快速谷歌说明我需要在.htaccess文件中添加一段代码以允许html文件运行php代码。试了一下,什么都没做,根本没用。在这里关闭此链接(由Orbis提供):http://php.about.com/od/advancedphp/p/html_php.htm

当我为所有页面执行此操作时,它开始执行时髦的东西,并且当我单击整个站点中的链接时要求我下载/打开页面,但不是每个链接.. ??当我为单个测试页面进行操作时,它没有完全停止。

有人有任何想法吗?

干杯。

4 个答案:

答案 0 :(得分:2)

为什么不将.htm文件重命名为.php?你可以在PHP文件中使用普通的HTML,就在<?php ?>标签之外。

.htaccess必须从您的托管服务商处获得,这可能就是它无效的原因。

编辑:然后只需将.htm文件替换为.php文件。 您可以通过<meta HTTP-EQUIV="REFRESH" content="0; url=http://www.yourdomain.com/yourfile.php">

实现此目的

或者,如果.htaccess由网络服务器运行,您可以在那里进行重定向: Redirect /youroldsite.htm yournewsite.php(将是更好的版本)

答案 1 :(得分:2)

您需要将.html更改为.php。 正如你提到的那样.htaccess没有工作检查这些东西它可能对你有帮助 是否已启用.htaccess?

这很不寻常,但可能是您的网站未启用.htaccess。如果你自己托管它,它很容易修复;在文本编辑器中打开httpd.conf,找到此部分

您的DocumentRoot可能会有所不同,当然

# This should be changed to whatever you set DocumentRoot to.
#
<Directory "/var/www/htdocs">
#

找到读取的行..

  

AllowOverride无

并将其更改为..

  

AllowOverride All

重启Apache。现在.htaccess会起作用。您也可以在虚拟主机内进行此更改,这通常是更可取的。

如果您的网站是由其他人托管的,请检查您的控制面板(Plesk.CPanel等),看看您是否可以在那里启用它,如果没有,请联系您的托管管理员。也许他们不允许这样做。在这种情况下,请切换到更好的Web主机。

并检查rewrite_module是否标记为

答案 2 :(得分:0)

将文件重命名为.php或更改服务器配置以将.htm文件识别为PHP文件。

示例(httpd.conf):

<IfModule php5_module>
    AddType application/x-httpd-php .php .htm .html
</IfModule>

作为替代方案,您可以设置mod_rewrite以在特定URL上路由到您的php文件。

答案 3 :(得分:0)

您需要将.html更改为.php。您提到需要将其他网站的链接资产保留到.html页面。要解决此问题,只需在301 redirect文件中添加.htaccess

//301 Redirect
Redirect 301 oldfile.html newfile.php