我们如何用.html替换.html通过.htaccess只为root文件而不是subirectoy文件。
示例:www.test.com/home.php应更改为www.test.com/home.html 但www.test.com/admin/home.php应保持不变。
我只是尝试如下:
RewriteEngine on
RewriteBase /
RewriteCond %{THE_REQUEST} (.*)\.php
RewriteRule ^(.*)\.php $1.html [R=301,L]
RewriteCond %{THE_REQUEST} (.*)\.html
RewriteRule ^(.*)\.html $1.php [L]
请帮助我。
答案 0 :(得分:1)
你可以在root .htaccess中使用这样的代码:
RewriteEngine on
RewriteBase /
RewriteCond %{THE_REQUEST} (.*)\.php
RewriteRule ^([^/.]+)\.php $1.html [R=301,L]
RewriteRule ^([^/.]+)\.html $1.php [L,NC]
[^/.]+
正则表达式将确保仅在根路径中工作。
答案 1 :(得分:0)
将.htaccess文件更改为:
RewriteEngine on
RewriteBase /
RewriteRule ^([^/]*)\.php$ $1.html [R=301,L]
RewriteRule ^([^/]*)\.html$ $1.php [L]
然后更新指向您的根页的所有链接以链接到*.html