繁体   English   中英

htaccess 301使用正则表达式重定向

[英]htaccess 301 redirect with regular expressions

帮助客户部署其具有大量页面的新网站。 最近,我发现我可以使用301重定向创建重写器。

我们从旧站点的URL创建了一个大型htaccess,用于标准重写器,使其出现在新站点上,但是我们需要它们将301重定向到该站点上的新URL结构,否则我们将有重复的内容。

例如:

 RewriteEngine On
 RewriteRule ^cs_AI_Adobe_CC_Design_Combo.html$ courses/adobe-design-combo [NC,L]

我们想将其创建为301吗? 我们尝试了以下无效的方法:

 RewriteEngine On
 RewriteRule ^cs_AI_Adobe_CC_Design_Combo.html$ courses/adobe-design-combo [R=301, L]

只是想知道我要去哪里错了?

我们还有更大,更复杂的规则,它们充当“重写”而不是“重定向”。

提前致谢!

您需要后删除空间,在您的重写标志。 Apache对于解析指令和参数非常愚蠢,因此当看到该空间时,会假设[R=301,L]是独立的参数和恶作剧:

RewriteEngine On
RewriteRule ^cs_AI_Adobe_CC_Design_Combo.html$ courses/adobe-design-combo [R=301,L]

您也可以只使用mod_alias:

Redirect 301 /cs_AI_Adobe_CC_Design_Combo.html /courses/adobe-design-combo

暂无
暂无

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

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