美文网首页
nginx域名配置

nginx域名配置

作者: 菜鸟的觉醒 | 来源:发表于2019-08-14 16:25 被阅读0次

    nginx 本地域名配置

    最近自己写了一个简单的页面应用,通过nginx作为代理服务器运行。但是每次访问都要输入长长的一对IP, 既不好记,打起来还麻烦。想着能不能直接像百度一样直接输入域名直接转到对应的地址呢?今天鼓捣了一下,终于知道怎么去玩,在此简单的记录一下。

    原理
    • 利用nginx的server_name实现域名跳转

    • 修改hosts文件将域名指向本地IP

    实现
    1. 配置nginx

      当然前提肯定是你已经安装了nginx,关于怎么去安装nginx这边就不介绍了。

    我们打开nginx的配置文件nginx.conf,修改server,修改如下部分

    server {
      listen 80;
      server_name www.**.com; ## 这个就是你要访问的域名 
      location / {
        root 你自己的项目地址
        index index.html index.htm
      }
     }
    
    1. 修改hosts文件

      mac的host文件在/etc下面,通过ls | grep hosts你可以看到

      ls.jpg

    sudo vim hosts(之所以要加sudo的原因是hosts普通用户没有权限修改), 修改如下内容, 注释部分

     # Host Database
     #
     # localhost is used to configure the loopback interface
     # when the system is booting.  Do not change this entry.
     ##
     127.0.0.1  localhost
     ## 添加的
     ## 本机的IP 对应nginx的server_name,例如
     192.168.8.122 www.**.com ## 例
     255.255.255.255 broadcasthost
     ::1             localhost
    

    退出并且保存, 重启nginx, 浏览器输入你的域名 www..com,这个时候就能看到你自己的项目了。

    思考

    如果有多个项目怎么办,这个就要利用nginx的 include属性

    server.png

    假设我们有两个项目 a 和 b, 域名分别是www.a.com 以及 www.b.com

    我们就在include目录下新建两个配置文件, 分别为a.conf, b.conf, 在其中写入以下下内容(只是简单做个示范,具体其他配置自行配置)

    # a.conf
    server {
       listen 80;
       server_name www.a.com;
       location / {
          root 项目地址
          index index.html index.htm
       }
    }
    
    # b.conf
    server {
       listen 80;
       server_name www.b.com;
       location / {
          root 项目地址
          index index.html index.htm
       }
    }
    

    同时修改hosts文件,添加下面内容

    ip地址  www.a.com
    ip地址  www.b.com
    

    再次重启nginx, 浏览器访问 www.a.com, www.b.com

    pageA.png pageB.png

    完美收工👋

    ps:如果觉得这篇文章对您有用,希望动动手指点个赞, 万分感谢 🐼

    相关文章

      网友评论

          本文标题:nginx域名配置

          本文链接:https://www.haomeiwen.com/subject/grxnjctx.html