403 Forbidden错误的原因和解决方法
网站出现403 Forbidden错误的原因以及怎么解决呢,本文整理关于网页403 forbidden让你明白403 Forbidden错误的原因以及怎么解决的方法。
在浏览网站的时候会出现“403 Forbidden”空白提示页,造成这种现象的原因是什么呢?为大家分析一下并提供一些解决思路。
403 forbidden是什么意思?
403 Forbidden是HTTP协议中的一个状态码(Status Code)。可以简单的理解为没有权限访问此站。该状态表示服务器理解了本次请求但是拒绝执行该任务,该请求不该重发给服务器。在HTTP请求的方法不是“HEAD”,并且服务器想让客户端知道为什么没有权限的情况下,服务器应该在返回的信息中描述拒绝的理由。
在服务器不想提供任何反馈信息的情况下,服务器可以用404 Not Found代替403 Forbidden
403错误是网站访问过程中,常见的错误提示。资源不可用,服务器理解客户的请求,但拒绝处理它。通常由于服务器上文件或目录的权限设置导致,比如IIS或者apache设置了访问权限不当导致的。
403错误代码的分类大全介绍
403.1错误是由于”执行”访问被禁止而造成的,若试图从目录中执行CGI、ISAPI或其他可执行程序,但该目录不允许执行程序时便会出现此种错误。
403.2错误是由于”读取”访问被禁止而造成的。导致此错误是由于没有可用的默认网页并且没有对目录启用目录浏览,或者要显示的HTML网页所驻留的目录仅标记为”可执行”或”脚本”权限。
403.3错误是由于”写入”访问被禁止而造成的,当试图将文件上载到目录或在目录中修改文件,但该目录不允许”写”访问时就会出现此种错误。
403.4错误是由于要求SSL而造成的,您必须在要查看的网页的地址中使用”https”。
403.5错误是由于要求使用128位加密算法的Web浏览器而造成的,如果您的浏览器不支持128位加密算法就会出现这个错误,您可以连接微软网站进行浏览器升级。
403.6错误是由于IP地址被拒绝而造成的。如果服务器中有不能访问该站点的IP地址列表,并且您使用的IP地址在该列表中时您就会返回这条错误信息。
403.7错误是因为要求客户证书,当需要访问的资源要求浏览器拥有服务器能够识别的安全套接字层(SSL)客户证书时会返回此种错误。
403.8错误是由于禁止站点访问而造成的,若服务器中有不能访问该站点的DNS名称列表,而您使用的DNS名称在列表中时就会返回此种信息。请注意区别403.6与403.8错误。
403.9错误是由于连接的用户过多而造成的,由于Web服务器很忙,因通讯量过多而无法处理请求时便会返回这条错误。
403.10错误是由于无效配置而导致的错误,当您试图从目录中执行CGI、ISAPI或其他可执行程序,但该目录不允许执行程序时便会返回这条错误。
视频解读: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等。
修改文件夹安全属性,用以下命令修改文件夹安全属性
chcon -R -t httpd_user_content_t public_html/
所用命令解析:ls -Z -d public_html/
#显示文件/目录的安全语境-Z, --context
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
关于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等错误。
WordPress导致403 Forbidden错误解决方法
对于一些使用WordPress管理程序搭建的博客来说,就需要修改.htaccess文件,在后面添加上如下内容即可,其实就是disable mod_security
SecFilterEngine Off
SecFilterScanPOST Off
另外dedecms的可能还需要再加一条,以让默认访问的是index.html文件的DirectoryIndex index.html。
修改.htaccess文件,将文件上传之后,再重新打开之前出现403 Forbidden的URL就没有再出现错误,直接可以打开了 。
从SEO的角度来说,常见403返回码的含义是“forbidden”,搜索引擎会认为当前页面禁止访问,但也不会删除,短期内会反复访问几次,如果网页允许访问,则正常抓取;如果长期返回403,搜索引擎会认为该URL是失效链接,将会删除。
因此,建议大家一旦发现自己的网站出现403错误的话,一定要及时的修复,使其链接能够正常访问。如果是不需要的页面,应该设置返回404状态码,按404操作。