如何将php文件另存为.php或.html扩展名?
为什么我们的php文件为.php,我们可以将.php文件保存为.html,因为在某些网站上,我看到了带.php扩展名的网页,为什么我们不能有.html文件的.html扩展名。如何将php文件另存为.php或.html扩展名?
它是否影响php文件在php服务器引擎上的执行。如果我们把它作为.html文件,里面有php代码。
如果你真的想与.html文件,以满足您的PHP代码,它可以做完了。
您的Web服务器配置为通过查看扩展来检测文件类型。默认情况下,它将通过PHP解释器路由.php文件,而.html文件将直接提供给最终用户。您可以通过服务器的配置文件或单个Web目录的本地.htaccess文件来配置此行为。有关如何执行此操作,请参阅@ kjy112的答案。
问题是为什么?这对你来说很重要吗?或者它只是你想要的一件好事。问问自己:您的最终用户会在意吗?甚至通知?
默认情况下这样配置浏览器的原因是为了使没有任何PHP代码的普通HTML文件可以传递给用户而不需要经历PHP解释器处理的开销。通过改变配置,所有的HTML文件都将被解释为PHP,即使它们实际上不包含任何PHP代码,所以您将为您的服务器增加额外的处理负载。当然,如果你的所有文件都含有PHP代码的一些元素,那么无论如何你都会想要这种行为,所以这显然不会让你担心。
所以可以做到。但可能有更好的解决方案给你:
当前SEO(搜索引擎优化)的趋势是摆脱URL中的文件扩展名完全。如果您查看此问题的网址,则会看到它有一个非常具有描述性的网址,并且没有扩展名。如果你想遵循当前的最佳实践趋势,你可能需要考虑沿着这条路线走下去。
这是使用mod_rewrite
完成的。 URL的描述部分完全是任意的:如果更改它,页面仍然会正确加载。重要部分是描述前的ID号码;这个描述只是为了给它的谷歌排名提供一个提升。对所涉及技术的全面讨论超出了这个问题的范围,但是有大量资源可以帮助你(尝试在本站点上搜索mod_rewrite以开始)。
注意:我在这里给出的所有特定的服务器配置建议适用于Apache Web服务器。如果您使用IIS或其他服务器产品,则可能需要相应地调整它。
+1写得很好的解释和SEO – kjy112 2011-03-01 14:10:49
什么更好,根据你的修改.htaccess文件或url重写。 – parmanand 2011-03-01 15:58:15
@Demla Pawan:如果我们仍在讨论URL中的.php v .html,那么它对最终用户没有任何不利。对服务器来说,修改.htaccess(或者更好的,主服务器配置)会更高效,因为它将直接访问指定的文件,而不必像mod_rewrite那样通过正则表达式解析器来运行每个URL。然而,mod_rewrite选项会意味着,如果用户浏览它们,则URL的.php和.html版本都可以使用。对于更复杂的URL解决方案,例如我描述的SEO技术,mod_rewrite是正确的答案,因为这不能简单地通过重命名文件来完成。 – Spudley 2011-03-01 17:18:23
你可以做到这一点,但你必须修改你的.htaccess
RemoveHandler .html .htm
AddType application/x-httpd-php .php .htm .html
的替代KJY的答案是使用URL重写,这将让你使用任何你想要的页面扩展/文件名。
最好还是根据你的修改.htaccess文件或url重写。 – parmanand 2011-03-01 15:58:49
@Demla重写网址,它基本上是标准。如果你曾经移动过服务器,那么它也会更具可移植性,而且如果有人设法注入所有HTML页面,那么你不必担心所有的HTML页面都会突然执行PHP代码。它还为您提供更多选项来显示页面名称。 – 2011-03-01 17:07:12
到file.htm所有请求都会被发送到file.php:
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^(.*)\.htm$ $1.php [NC]
什么更好,根据你的修改.htaccess文件或url重写。 – parmanand 2011-03-01 15:56:45
真的吗?如果页面被保存为。PHP引擎会直接传递它,你的PHP代码将会以纯文本格式呈现 – benhowdle89 2011-03-01 13:42:51
@ benhowdle89 - 实际上你可以配置服务器通过PHP解析器发送.html文件(或者其他任何扩展名)。不一定是个好主意,但它可以完成。 – Spudley 2011-03-01 13:53:22