CentOS系统下网站无法访问的原因和解决办法


  在centos下架设web,很简单啊,只要运行下面这条命令,基本上就能架设一个传说中的“LAMP”了,即apache+php+mysql

yum -y install httpd php php-mysql mysql mysql-server

有些本机可以访问,局域网其他电脑却无法访问,极有可能是iptables阻止了,关闭iptables或添加开放80端口的规则即可解决。

刚装完系统,selinux、iptables默认是开启的,一般大家都推荐关闭selinux,关闭的方法如下:

 

(教程)centos下web无法访问的原因及解决方案 - CentOS - Linux合Oracle学习之路

 打开后的界面如下:

(教程)centos下web无法访问的原因及解决方案 - CentOS - Linux合Oracle学习之路

 修改后的内容如下。

(教程)centos下web无法访问的原因及解决方案 - CentOS - Linux合Oracle学习之路

 

暂时关闭iptables:

service iptables stop

 

每次开机都是关闭状态:

chkconfig --level 123456 iptables off

 

关闭iptables后,所有端口都不受限制了,这时候,局域网内就能访问你的web站点了。

但是,一般大家都推荐开启iptables,所以,要给iptables添加规则,我举3个例子,分别是添加、插入、删除。所谓规则,是从上往下执行的,当最上面的一条符合时,自动忽略下面的,所以,要注意规则的顺序。这也是添加、插入的区别。

刚装完系统后的iptables规则有:

(教程)centos下web无法访问的原因及解决方案 - CentOS - Linux合Oracle学习之路

我们可以分析一下上面的图,当符合第1条规则时,系统不会再比照第2条规则,即忽略第1条后面的所有规则。

第5条的意思,如果第1-4条规则都不符合,那就全部都拒绝。 

添加一条规则:

(教程)centos下web无法访问的原因及解决方案 - CentOS - Linux合Oracle学习之路  
从上图可以看到,添加的规则是第6条,因为第5条是REJECT,即拒绝所有访问,所以第6条是永远执行不了的。当然,添加规则的方法很多,也可以指定添加到第几条前面。

删除规则:

(教程)centos下web无法访问的原因及解决方案 - CentOS - Linux合Oracle学习之路  
删除了第6条规则,也可以比照一下前面的图。

插入规则:

(教程)centos下web无法访问的原因及解决方案 - CentOS - Linux合Oracle学习之路
 插入的规则变成了第1条。这样,web就可以访问了。但是,我们这里还没涉及到安全的讨论,所以,在正式的服务器上,不要这样做。

最后说一下保存修改后的iptables:

service iptables save

 

 iptables的功能很强大,我这里罗列的只是一个最简单的方法,更多的内容,欢迎大家加群探讨。

 

指定插入到第5条规则:

iptables -I INPUT 5 -p tcp --dport 80 -j ACCEPT 

 

来源:服务器之家


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM