我在这里找了很长时间才找到类似的东西,但我无法找到我要找的东西。
我想将一个旧项目废弃项目重定向到一个新项目,它们只是部分相似,我想重定向匹配,然后其他一切,同时删除每个
我想我记得htaccess规则是一个接一个地工作的,所以我可以简单地在重定向上面添加301以外的其他内容,但事实证明这个代码
RewriteEngine On
Redirect 301 /match1.html https://www.domain.tld/match1/
Redirect 301 /match2.html https://www.domain.tld/match2/
Redirect 301 /match3.php&page=6 https://www.domain.tld/match3/?
RewriteBase /
RewriteRule .*? https://www.domain.tld/? [R=301,L]
将所有内容直接重定向到https://www.domain.tld/
旧项目mas完全手动工作450+静态html页面和另外~100个php文件,所以我希望有一个更简单的方法来创建一个巨大的.htaccess来做到这一点。
答案 0 :(得分:2)
由于您的上一条规则,您的规则会将所有内容重定向到https://www.domain.tld/
,并且对于重定向enbloc,您可以使用正则表达式进行匹配尝试使用以下内容,
RewriteEngine On
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^(.+)$ https://www.domain.tld/$1/ [R=301,L]
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.+)$ https://www.domain.tld/$1/ [R=301,L]
如果还有其他特定模式,请提供它们,我假设您使用的是根.htaccess
或相应目录中的规则。