繁体   English   中英

使用 htaccess 将所有 .html 文件重定向到旧站点

[英]Redirect all the .html files to old site with htaccess

我想将以 .html 结尾的所有文件重定向到旧站点文件夹,目前我的 htaccess 如下所示:

<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / # RedirectMatch 302 /(.+?).html$ http://superawesomedomain.com/old/$1.html [L] RewriteRule ^index\\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule>

但是当我应用它时,我的条件RedirectMatch 302会到达http://superawesomedomain.com/old/old/old/old/old/old...old/old/old...old/old/old/直到它打破浏览器:(

关于如何进行重定向的任何想法?

谢谢!

您可以使用以下规则:

RewriteEngine On
RewriteBase /

RewriteRule ^((?!old/).+?\.html)$ /old/$1 [L,NC,R=302]

RewriteRule ^index\.php$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]
  • 不要将RedirectMatch与其他mod_rewrite规则一起使用
  • 确保当 URI 已经以/old/开头时没有重定向以停止重定向循环

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM