重写.php以显示.htm

重写.php以显示.htm,php,html,Php,Html,我想将.php文件显示为.htm扩展名。这是我认为有效的方法,但它不起作用: RewriteEngine On RewriteBase / RewriteRule ^contact\.php$ contact.htm [NC,R,L] 任何帮助都将不胜感激。谢谢。将此添加到.htaccess文件中,以允许在HTML文件中使用PHP: # allow HTML files to process PHP AddType application/x-httpd-php .html .htm # n

我想将.php文件显示为.htm扩展名。这是我认为有效的方法,但它不起作用:

RewriteEngine On
RewriteBase /
RewriteRule ^contact\.php$ contact.htm [NC,R,L]

任何帮助都将不胜感激。谢谢。

将此添加到.htaccess文件中,以允许在HTML文件中使用PHP:

# allow HTML files to process PHP
AddType application/x-httpd-php .html .htm

# now the rewrite can occur
RewriteEngine On
RewriteBase /
RewriteRule ^contact\.htm$ contact.php [NC,R,L]

有了它,您可以重写URL。

将其添加到.htaccess文件中,以允许HTML文件中使用PHP:

# allow HTML files to process PHP
AddType application/x-httpd-php .html .htm

# now the rewrite can occur
RewriteEngine On
RewriteBase /
RewriteRule ^contact\.htm$ contact.php [NC,R,L]

有了这些,你就可以重写URL了。

你很接近了。您已经反转了重写规则参数-第一个参数是您正在侦听的参数(content.html),第二个参数是您想要加载的参数(contact.php)。我还删除了
R
标志,因此服务器在内部执行此操作-使用
R
标志,服务器将向浏览器发送命令,强制其重定向到新位置

RewriteEngine On
RewriteBase /
RewriteRule ^contact\.htm$ contact.php [NC,L]

你很接近。您已经反转了重写规则参数-第一个参数是您正在侦听的参数(content.html),第二个参数是您想要加载的参数(contact.php)。我还删除了
R
标志,因此服务器在内部执行此操作-使用
R
标志,服务器将向浏览器发送命令,强制其重定向到新位置

RewriteEngine On
RewriteBase /
RewriteRule ^contact\.htm$ contact.php [NC,L]

老实说,我不理解这种方式。认为在.htaccess文件中进行单页重写更有意义?@user3642210这基本上告诉Apache将每个
.htm
.html
文件视为PHP文件,并通过解释器传递它-这可以工作,但效率不高。。。尤其是当你只想伪造一个文件名时。是的-@CD001是对的,它一点也不高效。我倾向于重写和排除文件扩展名。老实说,我不理解这种方式。认为在.htaccess文件中进行单页重写更有意义?@user3642210这基本上告诉Apache将每个
.htm
.html
文件视为PHP文件,并通过解释器传递它-这可以工作,但效率不高。。。尤其是当你只想伪造一个文件名时。是的-@CD001是对的,它一点也不高效。我的首选是重写和排除文件扩展名。