注册
登录
提问时间:2018/11/12 15:01:51    楼主:未知网友   阅读量:231

大数据时代来临,数据采集推动着数据分析,数据分析推动发展,由此网络爬虫风靡一时。但在网络爬虫运行的过程中会遇到很多问题,如爬取速度、IP被封、爬取受限等等,举个简单的荔枝,当爬取数据爬的正起劲时,突然蹦出403 Forbidden,可谓十分闹心。

出现问题不可避免,但我们也不要心慌不要急,关键是要找出原因,然后解决问题,比如403 Forbidden,这个错误的原因就有好几种。

一、直接原因

1、你的IP被列入黑名单。

2、你在一定时间内过多地访问此网站(一般是用采集程序),被防火墙拒绝访问了。

3、网站域名解析到了空间,但空间未绑定此域名。

4、你的网页脚本文件在当前目录下没有执行权限。

5、在不允许写/创建文件的目录中执行了创建/写文件操作。

6、以http方式访问需要ssl连接的网址。

7、浏览器不支持SSL 128时访问SSL 128的连接。

8、在身份验证的过程中输入了错误的密码。

9、DNS解析错误,手动更改DNS服务器地址。

10、连接的用户过多,可以过后再试。

11、服务器繁忙,同一IP地址发送请求过多,遭到服务器智能屏蔽。

二、逻辑原因

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

找出了403 forbidden是由什么原因造成的,那么解决403 forbidden错误的方法就可以对症下药了。

1、重建dns缓存

对于一些常规的403 forbidden错误,马海祥建议大家首先要尝试的就是重建dns缓存,在运行中输入cmd,然后输入ipconfig /flushdns即可。如果不行的话,就需要在hosts文件里把主页解析一下了。 

同时,查看是否在网站虚拟目录中添加默认文档,一般默认文档为:index.html;index.asp;index.php;index.jsp;default.htm;default.asp等,如下图所示: 

403 Forbidden错误的原因和解决方法-马海祥博客

2、修改文件夹安全属性

用以下命令修改文件夹安全属性 

chcon -R -t httpd_user_content_t public_html/ 

所用命令解析: 

ls -Z -d public_html/ 

#显示文件/目录的安全语境-Z, –context 

Display security context so it fits on most displays. Displays only mode, user, group, security context and file name.-d, –directory 

list directory entries instead of contents, and do not dereference symbolic links 

chcon -R -t httpd_user_content_t public_html/ 

#修改文件/目录的安全语境-R, –recursive 

change files and directories recursively-t, –type 

set type TYPE in the target security context

3、关于apache导致的403 forbidden错误的解决办法

打开apache的配置文件httpd.conf,找到这段代码: 

Options FollowSymLinks 

AllowOverride None 

Order deny,allow 

Deny from all 

有时候由于配置了php后,这里的“Deny from all”已经拒绝了一切连接。把该行改成“allow from all”,修改后的代码如下,问题解决。 

Options FollowSymLinks 

AllowOverride None 

Order deny,allow 

Allow from all 

之所以会出现错误,是因为大多数的国外主机在配置Apache的时候启用了mod_security,也就是开启了安全检查,如果提交的信息中包含select , % , bin等关键字,Apache就会禁止,并给出403,404,500等错误。

4、使用优质的代理IP也是能够有效的避免遭遇403 Forbidden的重要手段,站大爷代理IP平台可以提供海量的IP资源,高效稳定,有效率高,性价比高,值得拥有。