Nginx定义域名访问

    最近在搭建Nginx,做到域名访问的时候总是访问不了。nginx的配置文件nginx.conf中server配置如下:

  server {

       listen       80;

       server_name  hehe.weige.com;

       #charset koi8-r;

       #access_log  logs/host.access.log  main;

location / {

           root   html-hehe;

           index  index.html index.htm;

       }

}

配置完之后 在sbin 目录下执行命令  ./nginx -s reload 重新加载配置文件

加载之后浏览器地址栏输入hehe.weige.com   一直访问不了

Nginx定义域名访问

就这个问题困扰了大半天。

搜索了好多大神的博客,配置没有任何问题。后面终于自己想到了。在这里强调两个最基础最简单的问题

1  同一个域名只能对应一个IP,同一个IP可以对应多个域名

2  当访问网站是系统会先去你本地的hosts(C:\windows\system32\drivers\etc)文件中查找,如果存在该域名就会访问该域名对应的IP,

如果不存在才会去互联网寻找。


重点看第二点,我本地的hosts文件根本就没有配置www.weige.com这个域名,于是去互联网查找。而这个域名是我自定义的,互联网肯定是查不到的。所以访问失败

出现了第一张图的情况。各位大神的博客都没有强调这个问题,是他们疏忽了还是我基础太烂了呢????   哎!不抱怨了。配置完hosts之后如下图


Nginx定义域名访问

然后重启电脑(不重启电脑我不知道有没有办法做到,如果读者有办法麻烦给分享一下,谢谢!)

再次在浏览器输入hehe.weige.com  访问成功。

 

带着问题学习是一个好的习惯,再次我也想广大读者请问两个问题:

1  Linux系统怎么修改hosts文件?

2 Windows系统修改hosts文件之后怎么实现不重启电脑也能有效?