今日225人次阅读了84/160篇文章  |    留言板  |    RSS订阅
人家说你年轻,像个学生一样。并不是因为你长得小,而是因为你穿的土毒鸡汤

nginx配置多个虚拟机/多个站点

2020-02-28     loonlog     3452     5

本文目录

      上一篇文章,介绍了在CentOS系统下用nginx部署静态页面网站,做一个个人简历展示网站,,做到充分利用了vps服务器资源,是不是还能继续利用这个服务器,那么我们想了,是不是一个vps服务器可以做多个站点同时运行,可喜的是,是可以的。

nginx可以配置多个虚拟主机,也就是常说的配置多站点,不同的域名访问不同的网站。

主要还是在nginx的配置上,下面的代码是上一篇文中提到的nginx配置,配置了一个站点服务器,网站根目录是/data/www,任何解析到这个vps服务器ip的域名,都可以访问这个网站,暂时我们把这个网站称之为“我的个人简历网站”。

 server {
        listen       80 default_server;
        listen       [::]:80 default_server;
        server_name  _;
        // 修改root默认目录如下
        root         /data/www;
        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;
        location / {
        }
        error_page 404 /404.html;
            location = /40x.html {
        }
        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }

上面的代码只是nginx配置文件的一部分,这一部分就是配置站点配置的内容,也即是虚拟主机的配置。我们想建立多个虚拟主机,就直接增添server部分(上述代码)代码即可,其他的默认。

上面的虚拟主机配置,并不区分域名相关内容,既然要多个虚拟主机,多个站点,不同域名访问不同的站点,那就得先拿域名开刀,然后新站点配置一个站点目录,就可以完事了。下面直接列出更改后的代码,大家自行比对。

server {
        listen       80;
        server_name  mydev.cn www.mydev.cn;  #这里添加要访问这个站点的域名 
        root         /data/jianli; #这里把简历这个站点的根目录改成了容易区分的名字jianli
            index index.html index.htm index.php;   # 默认导航页
        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;
        location / {
        }
        error_page 404 /404.html;
            location = /40x.html {
        }
        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }
server {
        listen       80;
        server_name  xingshe.wang www.xingshe.wang; #这里添加要访问这个站点的域名
        root         /data/xiangce; #这里是我的相册网站,这个站点的根目录改成了容易区分的名字xiangce
        index index.html index.htm index.php;   # 默认导航页
        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;
        location / {
        }
        error_page 404 /404.html;
            location = /40x.html {
        }
        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }

以上配置了两个虚拟主机,运行两个站点,分别是我的简历网站和我的相册网站,把上面的域名在域名服务商那里解析到这个vps服务器即可,两个域名分别访问两个站点,mydev.cn和www.mydev.cn访问/data/jianli目录下面的index.html主页,xingshe.wang和www.xingshe.wang访问/data/xiangce目录下面的index.html主页。

最后,重启nginx服务即可

nginx -s reload

至此大功告成。访问以下网站试试吧。

以上我用的方法是把配置内容都加在了nginx.conf里面,也有人把配置文件分开在不同文件和目录中,也是一样的哪,我也没做太多测试,目前的认知是这样的。

大家有遇到什么问题可以留言交流!

参考资料:

http://www.ttlsa.com/nginx/nginx-configure-vhosts/

https://www.cnblogs.com/Erick-L/p/7066564.html?spm=a2c4e.11153987.0.0.5d614ddfSkfk8s

网站 , 博客 , nginx

nginx配置多个虚拟机/多个站点
http://loonlog.com/2020/2/28/nginx-more-virtual-host-vhost/
    觉得有用?请点击页面顶部广告支持我!

您可能感兴趣的文章

发表评论(关于评论)

评论列表,共 5 条评论

  • 回复

    3楼

    如果我的服务器位于防火墙后面,使用NAT将外网商品映射到内网端口,我也是按照上面的配置了,但死活不行。

    菜鸟之志 winlong ,

    回复

    那你的路由器配置转发规则吧

  • 1

    回复

    2楼

    测试11111111111

  • 回复

    1楼

    测试 测试

    测试   sad 测试

    测试

    青山 六十一 ,

    回复

    我来试试