我在主要网站刷新后做了各种各样的301指令,但是有些404页似乎一次又一次出现。
该模式非常简单,因为unicode字符似乎存在问题。
然而,似乎我在这些麻烦的链接上做了很多301重定向,unicode字符现在只是重定向链接的一部分。
所以如果我有一个看起来像这样的SEF网址给我404:
http://mysite.com/mobileconnection-%7C-yourchoice.html
理论上,正确的网址是:
http://mysite.com/mobileconnection-|-yourchoice.html
好像我无法将其改写回正确的角色。
有人能指出我某种方向吗? :)
更新
问题始于谷歌网站管理员工具。显然谷歌以Unicode格式显示404网址,所以| (管道)显示为%7C。我使用网站管理员工具进行重定向,最终得到了包含%7C管道的SEF网址。
答案很好,我现在将其评为有用:)
答案 0 :(得分:0)
这有点问题。因为并非所有浏览器都会通过|虽然字符很多,但很多人会对它进行URL编码。因此,在URL中使用非ASCII符号根本不是一个好的解决方案。
在Web服务器传递编码字符的情况下,很难处理此URL,因此在重写规则中,您始终需要使用%7C而不是|。
请在网址中使用ASCII;)
您可以使用重定向,也可以在.htaccess中使用URL重写替换%7C
|
,但我不确定网络服务器是否能够处理此替换。