今天用HTML写一个测试页面做网址收藏导航,用a标签快速跳转到收藏的网站,测试时发现大部份网站跳转后都能正常打开,但有个别网站跳转后报错,百度了半天原来是如下原因:
当点击访问页面中外链地址时,会产生一个http请求(用于获取外链地址内容),此时出于安全策略(一些用户信息或登录信息会通过url传递),浏览器会在请求头中添加一个referrer,用来表示当前请求是从哪个页面跳转来的,也就是访问来源。当外链网站对访问做判断时,于是会出现诸如该网页无法正常运作、403 Forbidden、The HTTP request is not acceptable for the requested resource.问题。
解决方法:
在html文件的<head>中加入如下<meta>代码:
// index.html
<meta name="referrer" content="no-referrer" />