繁体   English   中英

为什么我的php行在我的html文件中不起作用?

[英]Why won't my php lines work in my html file?

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

测试页“ page.php”工作正常,太好了! 将其合并到现有的html页面中,这就是我遇到的问题。 杜尔(Duhr),它不会运行php代码片段。

快速Google阐明了我需要在.htaccess文件中添加一段代码,以允许html文件运行php代码。 尝试了一下,什么都没有,根本没有用。 在此处断开了此链接(由Orbis提供): http : //php.about.com/od/advancedphp/p/html_php.htm

当我在所有页面上都执行此操作时,它开始执行一些时髦的操作,并在我单击整个站点的链接(而不是每个链接)时要求我下载/打开页面。 当我为单个测试页执行此操作时,它不能完全停止工作。

任何人有任何想法吗?

干杯。

为什么不将.htm文件重命名为.php呢? 您也可以在PHP文件中的<?php ?>标记之外使用普通HTML。

必须从您的主机允许.htaccess,所以这可能是它不起作用的原因。

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

或者,如果.htaccess由网络服务器运行,则可以在那里进行重定向: 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无

并将其更改为..

允许全部覆盖

重新启动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页面的链接.html 若要解决此问题,只需在.htaccess文件中添加301 redirect

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM