我做了一个htaccess文件,但是有几个测试人员告诉我这是不对的。域B正在离线,我希望将所有页面重定向到域A上的新页。
这是代码:
redirect 301 / https://domain-A.com/
redirect 301 /page-1/domain-B/ https://domain-A.com/page-1/
redirect 301 /page-2/domain-B/ https://domain-A.com/page-2/发布于 2022-04-11 10:33:04
重定向301 / https://domain-A.com/重定向301 /页-1/域-B/ https://domain-A.com/page-1/重定向301 /页-2/域-B/ https://domain-A.com/page-2/
你的规则顺序不对。Redirect指令是前缀匹配.第一个规则重定向所有内容(并保留URL路径)。第二条和第三条规则从未被处理过。(“测试人员”报告的确切内容是什么?这是一个派对工具还是一个真正的“测试者”?)
如果您请求/page-1/domain-B/,您将看到您没有按预期被重定向。(您的目标是重定向到https://domain-A.com/page-1/domain-B/,而不是https://domain-A.com/page-1/。)
你需要改变这些规则的顺序。最具体的需要是第一。
例如:
Redirect 301 /page-1/domain-B/ https://domain-A.com/page-1/
Redirect 301 /page-2/domain-B/ https://domain-A.com/page-2/
Redirect 301 / https://domain-A.com/在测试之前,您需要清除浏览器缓存,因为错误的301将被浏览器缓存。首先使用302重定向进行测试,以避免缓存问题。
/page-1/domain-B/
而/domain-B/实际上在URL路径中?
https://stackoverflow.com/questions/71825537
复制相似问题