我正在帮助客户端将在网址末尾使用.html扩展名的旧网站迁移到正确命名的网址结构。我希望将以.html结尾的所有网址重定向到主页。
我尝试了这个,但它不起作用:
RewriteRule ^(.*)\.html$ $1http://domain.org [NC]
答案 0 :(得分:3)
您可以使用以下内容:
RewriteEngine On
RewriteBase /
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ([^/]+)\.html$ index.php?page=$1 [L,NC]
或永久重定向
RewriteEngine On
RewriteBase /
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule (.*)\.html$ / [R=301,NC,L]
答案 1 :(得分:3)
这样的事情应该符合你的需要:
RewriteEngine On
RewriteBase /
RewriteRule (.*)\.html$ / [QSA,R=301,NC,L]
答案 2 :(得分:0)
你的问题不是很清楚,但只是根据你的代码,我认为这对你有用:
RewriteRule \.html$ http://domain.org/? [R,L,NC]
这会将每个以.html
结尾的网址重定向到http://domain.org/
,甚至会删除原始URI中的任何查询参数。