您的位置首页百科词条

网站出现403 Forbidden错误的原因以及怎么解决的方法

网站出现403 Forbidden错误的原因以及怎么解决的方法

403 Forbidden是 HTTP协议中的一个状态码(Status Code),可以简单理解为没有权限访问此站。该状态表示服务器理解了本次请求但是拒绝执行该任务,该请求不该重发给服务器。在HTTP请求的方法不是“HEAD”,并且服务器想让客户端知道为什么没有权限的情况下,服务器应该在返回的信息中描述拒绝的理由。在服务器不想提供任何反馈信息的情况下,服务器可以用404 Not Found代替403 Forbidden。

 

 那么HTTP 403 – 禁止访问细分的话,又分以下这些情况:

 

HTTP 403 – 对Internet服务管理器(HTML)的访问仅限于Localhost

 

    HTTP 403.1 – 禁止访问:禁止可执行访问

 

    HTTP 403.2 – 禁止访问:禁止读访问

 

    HTTP 403.3 – 禁止访问:禁止写访问

 

    HTTP 403.4 – 禁止访问:要求SSL

 

    HTTP 403.5 – 禁止访问:要求SSL 128

 

    HTTP 403.6 – 禁止访问:IP地址被拒绝

 

    HTTP 403.7 – 禁止访问:要求客户证书

 

    HTTP 403.8 – 禁止访问:禁止站点访问

 

    HTTP 403.9 – 禁止访问:连接的用户过多

 

    HTTP 403.10 –禁止访问:无效配置

 

    HTTP 403.11 –禁止访问:密码已更改

 

    HTTP 403.12 –禁止访问:映射器拒绝访问

 

    HTTP 403.13 –禁止访问:使用的客户证书已被吊销

 

    HTTP 403.15 –禁止访问:客户访问许可过多

 

    HTTP 403.16 – 禁止访问:客户证书不可信或者无效

 

    HTTP 403.17 – 禁止访问:客户证书已经到期或者尚未野帆生效

 

    403错误是网站访问过程中,常见的错误提示。我们遇到了,也不要心慌不要急,关键是结合上述错误提示找出原因,然后解决问题。

 

    首先,检查一下代码里有没有设置User-Agent。对有些header要特别留意,Server端会针对这些header做检查。User-Agent有些Server或Proxy会检查该值,用来判断是否是浏览器发起的Request。Content-Type在使用REST接口时,Server会检查该值,用来确定HTTP Body中的内容该怎样解析。这时可以通过修改http包中的header来实现。

 

    其次,使用http。这其中有两个层面。一是一定要确保使用的是高匿代理IP,比如覆盖了全球ip资源的IPIDEA,ip数量每日达9000w,大家都知道代理IP按匿名程度可以分为透明代理、普匿代理和高匿代理。透明代理会透露本机IP,普匿代理会透露使用了代理IP,这两者都会暴露使用了代理IP的事实,很容易被识别,高匿代理则不会暴露;二是尽量使用纯净的代理IP。如果有很多其他人和你使用一样的IP同时访问一个网站,也很容易被识别,当这些IP访问频率过快或者访问测试达到了目标网站的阈值时,则会肢胡被封IP。

 

    403Forbidden错误一般在爬虫采集数据时出现的频率比较多,在爬虫使用代理IP的颂饥雹时候因为不停地访问服务器终端,频发请求时,服务器终端压力过大,触发了反爬虫机制,导致服务器会拒绝这个IP的访问请求,这个时候如果不切换掉被禁用的IP地址,肯定会影响正常的数据采集效率。所以就需要设置时间来定时切换IP地址。IP代理最核心的功能,就是可以更换各个城市不同的IP地址,而且可以隐藏本地的IP地址。