标签:nginx centos iptables firewall
1.yum命令直接安装yum install nginx
系统提示:
No package nginx available. Error:Nothing to do
说明nginx没有在源镜像库里,加入nginx源
rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
再安装nginx就没问题了
yum install -y nginx
然后启动nginx,设置开机自启动
systemctl start nginx systemctl enable nginx
2.nginx启动后访问浏览器发现无法访问
有两个可能,nginx服务启动失败(可能是端口占用,可能是配置错误),防火墙拦截了。
检查服务端服务是否启动成功
[root@xxxxxx html]# ps -ef |grep nginx #查看nginx服务是否启动
root 1609 1 0 16:46 ? 00:00:00 nginx: master process nginx nginx 1610 1609 0 16:46 ? 00:00:00 nginx: worker process root 1898 1593 0 18:09 pts/0 00:00:00 grep nginx
发现是在运行的
检查80端口
netstat -lnt |grep 80
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
80端口正在被nginx监听
在服务器上访问
curl 127.0.0.1 wget 127.0.0.1
都可以访问,nginx服务没问题
检查防火墙
由于CentOS 7默认使用的是firewall作为防火墙,检查服务器用的是iptables防火墙还是firewall
service iptables status
提示找不到iptables服务
检查firewall状态
firewall-cmd --state
running
测试环境可以关闭firewall一劳永逸
firewall-cmd --stop
生产环境添加端口白名单
firewall-cmd --permanent --add-port=80/tcp firewall-cmd --reload
另外还有要考虑selinux的权限问题,多数安装的文章上来就关闭selinux,我因为是测试环境root权限,无所谓关不关,如果是生产环境,和防火墙一样需要配置,切不可一关了之
参考文章:
https://www.cnblogs.com/UnixAgain/p/3500743.html
标签:nginx centos iptables firewall
原文地址:http://blog.51cto.com/6985385/2095620