配置服务器时候发现的问题,真的是搜肠刮肚的找答案,找一下午,终于找到了答案。

一、开始找原因

在浏览器输入:http://ip,正常的话,会有页面,welcome to nginx 
我这里是浏览器访问失败, 
查找原因:

1、在服务器上访问Ip

执行:curl http://ip 
结果:超时,未连接成功

查看nginxaccess.log日志,发现日志未滚动,代表本机访问不到公网ip

2、确认网络是否可达

telnet 12x.xx.x.xx 80
Trying 12x.xx.x.xx...
Connected to 12x.xx.x.xx.
Escape character is '^]'.
  • 1
  • 2
  • 3
  • 4

这样就说明网络上可达,并且TCP三次握手可以完成,因为能telnet通,排除了网络不通的情况 
但是我本地的网络不通。

3、是否受防火墙安全控制等。

将iptables和selinux关闭 
以下4条命令清除iptables的配置

iptables -F
iptables -F -t nat
iptables -X
iptables -X -t nat
  • 1
  • 2
  • 3
  • 4

setenforce 0 #关闭selinux 
重新远程访问,还是失败。说明不是防火墙的原因。这里因为我是debian,所以默认是没有开启防火墙的,所以不是这个原因。

4、去/var/log/nginx/error.log查看错误日志

日志报错:Address already in use 
这里就已经确认错误在哪了,原来是80端口被占用的问题。

5、解决方案

1)执行:lsof -i:80 查看此时哪个进程正在使用80端口 
我这边发现是阿里云盾正在使用80端口

2)杀掉云盾进程,重启nginx试试 
kill -s 9 pid 
具体参考博客:http://blog.csdn.net/ljfphp/article/details/78666376

6、好吧,惊奇的发现,通过浏览器还是访问不了nginx,但是此刻我的80端口已经被nginx监听了。继续查看错误日志。错误日志并没刷新。

7、百度发现有人说是iptables防火墙的原因,但是debian系统的安装默认是没有iptables,所以应该不是防火墙的原因。

8、看到有人说,是没有备案域名的原因,80端口默认是关闭状态。好吧,我准备改成8080端口,看看能不能行吧。(这个没来得及试)

二、真正的凶手

终于找到问题了,眼泪差点掉下来。原来是阿里云的问题。我刚开通的服务器,没有设置安全组规则。下面给大家演示一下安全组怎么设置。 
1、进入云服务控制台

2、找到安全组,点击进入 
 
3、在默认的一个安全组上,有一个配置规则按钮。点击配置规则 
 
4、这是我原来的安全组规则,没有http的

5、按照如图所示添加

6、浏览器访问ip成功 

nginx公网IP无法访问浏览器的更多相关文章

  1. 阿里云服务器 nginx 公网 IP 无法访问 浏览器

    配置完成 nginx 后, 在浏览器输入:http://ip,正常的话,会有页面,welcome to nginx但是浏览器显示访问失败 主要从两个方面找原因,一个是阿里云的安全组和服务器的防火墙是否 ...

  2. 设置nginx禁止IP直接访问,只能通过指定的域名访问

    nginx的版本是1.2.1. 设置配置文件disableip.conf: server {     listen 80;     server_name _;     return500; } 这是 ...

  3. 服务器部署网站后,公网ip可以访问,域名不能访问问题(稳)

    出现问题 这几天我网站已经部署到vps上,域名也备好案,想使用域名指向我们公网ip.指完发现用域名访问不了网站,但是公网ip可以.于是看了网上资料,好像是要清除浏览器DNS缓存,我清完没用.然后发现我 ...

  4. Nginx禁止IP直接访问网站

    禁止别人直接通过IP访问网站,在nginx的server配置文件前面加上如下的配置,如果有通过IP直接访问的,直接拒绝连接(需要去掉别的server下的default_server). server ...

  5. nginx禁止ip直接访问

    编辑一个noIp.conf放到虚拟目录中 server { listen default; server_name _; rewrite ^ http://www.xxxx.com/; } 其中 ww ...

  6. nginx根据IP限制访问

    nginx有两个模块可以控制访问 HttpLimitZoneModule    限制同时并发访问的数量 HttpLimitReqModule     限制访问数据,每秒内最多几个请求 http{ ## ...

  7. nginx 设置ip地址访问,但是设置域名访问不了

    一.导语 在Nginx的设置过程中,ip地址能正常访问的,但是把ip地址转换成域名,就访问不了了,这个是怎么回事呢?今天来探讨一下 二.设置ip地址做负载均衡 2.1.server端 server { ...

  8. nginx 限制ip/限制访问路径

    一.多站点统一限IP vim nginx.conf allow 127.0.0.1; deny all; # 以上代码解释: # deny all; 限制所有的ip # allow ip; 除了 这个 ...

  9. Nginx 使用IP限制访问来源

    在 server {... 下, 或者在 location xxx {... 下, 都可以添加如下的IP访问限制 allow 10.57.22.172; allow ; allow ; allow ; ...

随机推荐

  1. centos7 xfs 文件系统配置quota 用户磁盘配额

    centos7的xfs配置   XFS是扩展性高.高性能的文件系统.也是rhel7/centos7的默认文件系统.XFS支持metadata journaling,这使其能从crash中更快速的恢复. ...

  2. Java基础-JDK、JRE与JVM的区别

    JRE与JVM.JDK的区别 从下而上:最上层    JDK  -- java development kit (java开发工具包)中间层    JRE -- java runtime enviro ...

  3. Spring总结二:IOC(控制反转)xml方式

    1,简介: IoC :Inverse of control 控制反转 ,思想就是在项目中引入一个工厂容器,对项目中接口依赖对象的创建,实现项目中对于依赖对象解耦合. 将程序中对象的创建权以及对象的整个 ...

  4. java基础之集合长度可变的实现原理

    首先我们要明白java中的集合Collection,List,ArrayList之间的关系: ArrayList是具体的实现类,实现了List接口 List是接口,继承了Collection接口 Li ...

  5. Gym - 101128H:Sheldon Numbers

    题意 给你两个整数X和Y 问你在区间[X,Y]中,有多少数字的二进制满足ABAB或者A这种形式.A是某个数量的1,B是某个数量的0. 分析 因为数据规模很大,直接枚举x和y之间的数字然后判断会超时.所 ...

  6. 【codevs2822】爱在心中

    题目描述 Description “每个人都拥有一个梦,即使彼此不相同,能够与你分享,无论失败成功都会感动.爱因为在心中,平凡而不平庸,世界就像迷宫,却又让我们此刻相逢Our Home.” 在爱的国度 ...

  7. IP定位,天气接口

    首先获取IP ////获得本地真实IP function get_onlineip() { $ip_json = @file_get_contents("http://ip.taobao.c ...

  8. Java 基于web service 暴露接口 供外部调用

    package cn.zr.out.outinterface; import java.text.SimpleDateFormat; import java.util.Date; import jav ...

  9. 虚拟机Ubuntu16.04安装lrzsz

    [系统环境] 宿主机:Win7 64位 虚拟机软件:Vmware workstation 12 虚拟机:Ubuntu 16.0.4 [目的] 配合Secure CRT使用rz,sz,方便在Ubuntu ...

  10. Python 网络爬虫 010 (高级功能) 解析 robots.txt 文件

    解析 robots.txt 文件 使用的系统:Windows 10 64位 Python 语言版本:Python 2.7.10 V 使用的编程 Python 的集成开发环境:PyCharm 2016 ...