在nginx中更改localhost主机名

我有多个本地站点,并且我想将nginx配置为每个网站都有不同的主机.在/ var / www中,我有2个站点:site1和site2然后在/ etc / nginx / sites-available /中,我为每个服务器创建了2个不同的配置服务器.我有文件site1和site2,其内容如下:server { listen 80;

我有多个本地站点,并且我想将nginx配置为每个网站都有不同的主机.

在/ var / www中,我有2个站点:site1和site2

然后在/ etc / nginx / sites-available /中,我为每个服务器创建了2个不同的配置服务器.我有文件site1和site2,其内容如下:

server {
        listen 80;

        root /var/www/site1;
        index index.html index.htm;

        server_name localhost;

        location / {
                try_files $uri $uri/ /index.html;
        }
}

server {
            listen 7777;

            root /var/www/site2;
            index index.html index.htm;

            server_name localhost;

            location / {
                    try_files $uri $uri/ /index.html;
            }
    }

我使用站点1的http:// localhost:80和站点2的http:// localhost:7777访问它们.那很好.我也可以像这样在/ etc / hosts中添加主机名:

127.0.0.1 localhost site1 site2

我可以使用http:// site1:80和http:// site2:7777访问它们.但是我必须始终访问端口号.我想通过http:// site1和http:// site2访问它们.

有解决方案吗?

最佳答案
您已经弄清楚了,但是让我解释一下它为什么起作用的原因.

第一个站点site1应该可以正常工作,因为默认的http端口是80,而这正是site1在监听的内容,因此http://site1.com可以正常工作.

site2的第二个配置文件正在侦听端口7777,因此无法正常运行http://site2.com,实际上,它可能会选择您的默认网站并提供服务,因为nginx并未尝试匹配server_name在配置中带有一个,因为端口不匹配.

您应该在端口80上创建所有网站,nginx会自行进行匹配并知道要服务器哪个站点,除非它是https网站,否则您将使用端口443,这是默认的ssl端口

作者: dawei

【声明】:永州站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部