我前一段时间为一家公司构建了一个网站,它的页面主要是用html几个php页面来支持一些动态内容。将PHP添加到.html页面
该公司现在需要在其index.html页面上的动态内容,虽然我在印象之下,我可以打开一些标准的PHP标签,添加我的PHP的行,然后走开,看起来并非如此和我的PHP不会运行。
任何人都可以解释什么是为了让我的PHP代码在.html页面中运行所需?
感谢,强尼
我前一段时间为一家公司构建了一个网站,它的页面主要是用html几个php页面来支持一些动态内容。将PHP添加到.html页面
该公司现在需要在其index.html页面上的动态内容,虽然我在印象之下,我可以打开一些标准的PHP标签,添加我的PHP的行,然后走开,看起来并非如此和我的PHP不会运行。
任何人都可以解释什么是为了让我的PHP代码在.html页面中运行所需?
感谢,强尼
服务器需要被告知通过运行PHP引擎的文件。
这通常通过给文件.php
扩展名来完成。
您也可以将服务器配置为通过PHP传递以外的其他文件扩展名或特定的文件的文件,但如何做到这一点取决于服务器(和服务器配置的问题,而不是编程)。
看来,如果我使用的是Apache,我将能够配置服务器来解析HTML文件中的PHP,但是我不是这样的,除了重命名.html之外,它看起来像我可以做的任何事情。 PHP。 – Cliftwalker 2011-03-22 19:07:37
这听起来不太可能,但不幸的是,“不是Apache”留下了很多可能性。 – Quentin 2011-03-23 00:06:32
我认为有问题的服务器已经安装了PHP,因为你说你有PHP的网站的其他地方。
您是否将HTML页面保存为PHP页面,即.php扩展名?
不,我需要把它保存为一个.html页面 – Cliftwalker 2011-03-21 13:39:07
如果服务器安装了PHP模块,你可以配置Web服务器通过PHP模块来处理.html文件。 (随着AddHandler
为如Apache)
否则,重命名文件以.PHP,并有一些奇特的URL重写,使他们能够通过html的调用。
最简单的方法是将它们命名.PHP,但如果你需要将它们留做html的,你可以在服务器上使用的现代重写允许的.html链接是完全有效的。
更新:作为Windows Server上的,你可以用这个包http://www.seoconsultants.com/windows/isapi/允许的URL重写。从我可以收集的内容来看,它和Mod_Rewrite非常相似。
这听起来很可能,我托管在启用了PHP5的Windows服务器上,关于如何实现这一点的任何想法? – Cliftwalker 2011-03-21 13:41:39
使用URL替代品。你运行的是Apache还是IIS,如果你运行的是Apache,那么google mod_rewrite如果你在IIS上看这个http://www.motobit.com/help/url-replacer-rewriter/iis-mod-rewrite.asp – 2011-03-21 13:44:10
@ Jakub's答案几乎与我的方法完全相反,但原理仍然以任何方式。 – 2011-03-21 13:47:52
你有两个选择,以得到你需要去:
对于可用过程的缘故,和易于支持我会做第一,这里有两个解决方案:
mod-rewrite(.htaccess文件),你将需要对所有的.html文件等效的.php文件。
RewriteEngine on
RewriteRule ^(.*)\.html $1\.php
添加到您的Apache的配置文件:
AddHandler application/x-httpd-php .php .html .htm
把重定向index.html中 代码重定向到名为.php的扩展名的文件,并把所有的index.html材料那儿,不管你想添加的附加代码。
所以当有人到达index.html时,他们会被带到假设home.php的index.html内容将停留在哪里,您的动态代码。
这是最简单的解决方案,如果你不能改变index.html index.php。
你需要把它保存为.php吗?你不能只是改变文件扩展名? (index.php)?它仍然应该显示为文件夹的默认页面 – kieran 2011-03-21 13:37:11
是的,我需要保持它.html – Cliftwalker 2011-03-21 13:38:33
PHP脚本 - 甚至一些标准的PHP标记 - 通常运行在* .php文件 – bensiu 2011-03-21 13:38:43