hel*_*tan 0 .htaccess redirect url-redirection
我将一些静态html文件/ URL重定向到这样的一些新URL:
Redirect 301 / http://newsite.com
Redirect 301 /pageA.html http://newsite.com/subfolder/page-a/
Redirect 301 /pageA-B.html http://newsite.com/subfolder/page-a/page-b/
Run Code Online (Sandbox Code Playgroud)
但是,生成的URL看起来像这样:
http://newsite.com/subfolder/pageA-B.html/
Run Code Online (Sandbox Code Playgroud)
代替
http://newsite.com/subfolder/page-a/page-b/
Run Code Online (Sandbox Code Playgroud)
为什么我的网址重定向会沿旧路径传递?
事实证明,这只是一个优先顺序。似乎第一个规则是:
Redirect 301 / http://newsite.com
Run Code Online (Sandbox Code Playgroud)
立即变成一个包罗万象的东西。相反,需要颠倒顺序:
Redirect 301 /pageA-B.html http://newsite.com/subfolder/page-a/page-b/
Redirect 301 /pageA.html http://newsite.com/subfolder/page-a/
Redirect 301 / http://newsite.com
Run Code Online (Sandbox Code Playgroud)
从我收集的数据来看,我的原始方式是,离开根目录的任何路径都将自动匹配根目录,因为它实际上将旧网址作为参数传递。但是通过颠倒顺序,这是一个更明确的匹配,然后优先进行匹配,因为它位于它尝试匹配的网址列表的顶部。
不知道我是否在正确解释这种逻辑/操作顺序,但是那是最好的,我可以在凌晨4点总结此功能。
| 归档时间: |
|
| 查看次数: |
6389 次 |
| 最近记录: |