我只是注意到有时(即使给出了错误的网址)加载完全正常。他们是如何做到这一点的?我的意思是,假设你点击一个看起来像www.foo.com好的链接,但它最后包含一个空格字符,它会出现在地址栏上,如www.foo.com%20,有些网站设法重定向这个他们正确的网址,而其他人只是打破。怎么能实现这一目标?我猜它与.htaccess有关,但我不知道该做什么或在哪里做。
我想重定向的网址实际上是这样的:http://foo.com/%C2%A0
我收到以下错误消息:
在此服务器上找不到请求的网址/%C2%A0。
如何进行此重定向? 到目前为止,我提出了:
RewriteEngine on
RewriteBase /
RewriteCond %{THE_REQUEST} ^[A-Z]+\ /[^%?\ ]*\%
RewriteCond %{REQUEST_URI} !^/
RewriteRule ^(.*)$ http://www.foo.com/ [R=301,L]
但它根本不起作用
答案 0 :(得分:0)
URL Rewrite将是其他表单中可能存在的IIS版本,如果您想要重新编写URL,假设您的意思是这种情况。
不要忘记浏览器可能会对某人输入的内容做出某些猜测,这样如果有人输入“foo.com”,浏览器可能会默认修剪空格而不是URL编码文本。如果“http://foo.com”失败,那么它可能会尝试“http://www.foo.com”获取另一个想法,因为这些可以看作是对某人输入内容的简单解释。如果两者都失败那么它谷歌可能只是认为地址栏应该像搜索框一样对待。