首页 / 服务器测评 / 正文
Nginx配置多域名,nginx配置多域名代理访问

Time:2025年01月07日 Read:16 评论:42 作者:y21dr45

一、背景介绍

Nginx配置多域名,nginx配置多域名代理访问

在现代互联网应用中,多域名配置是一项常见需求,特别是在一台服务器上运行多个网站或应用的情况下,Nginx作为一款高性能的HTTP和反向代理服务器,具有强大的多域名支持能力,本文将详细介绍如何在Nginx中配置多域名,帮助用户实现在同一台服务器上通过不同域名访问不同的站点内容。

二、前提条件

1、已安装Nginx:确保服务器已经安装了Nginx,并且能够正常运行,如果未安装,请参考Nginx的官方文档进行安装。

2、有多个域名:假设我们已经拥有了两个域名,例如example1.com和example2.com,并且这些域名已经解析到了服务器的IP地址。

3、有站点目录:为每个域名准备一个站点目录,www/example1.com和/www/example2.com。

三、配置步骤

创建站点目录

为每个域名创建一个站点目录,并将站点文件放置在相应目录下。

sudo mkdir -p /www/example1.com/html
sudo mkdir -p /www/example2.com/html

将站点文件(如index.html)放在相应的目录中。

创建独立的配置文件

为了便于管理,我们可以为每个域名创建一个独立的Nginx配置文件,在Nginx的配置目录下创建一个vhost目录(如果尚未存在),并在其中创建各域名的配置文件。

sudo mkdir -p /usr/local/nginx/conf/vhost
sudo nano /usr/local/nginx/conf/vhost/example1.com.conf

在example1.com.conf文件中添加以下配置:

server {
    listen 80;
    server_name example1.com www.example1.com;
    access_log /www/example1.com/access.log main;
    location / {
        root /www/example1.com;
        index index.html index.htm;
    }
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /usr/share/nginx/html;
    }
    location ~ \.php$ {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME /www/example1.com$fastcgi_script_name;
        include fastcgi_params;
    }
    location ~ /\.ht {
        deny all;
    }
}

重复上述步骤,为example2.com创建配置文件,并修改相应的路径和域名:

server {
    listen 80;
    server_name example2.com www.example2.com;
    access_log /www/example2.com/access.log main;
    location / {
        root /www/example2.com;
        index index.html index.htm;
    }
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /usr/share/nginx/html;
    }
    location ~ \.php$ {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME /www/example2.com$fastcgi_script_name;
        include fastcgi_params;
    }
    location ~ /\.ht {
        deny all;
    }
}

包含配置文件

修改Nginx的主配置文件nginx.conf,使其包含我们刚刚创建的虚拟主机配置文件,在nginx.conf的http模块中添加以下行:

http {
    ...
    include /usr/local/nginx/conf/vhost/*.conf;
    ...
}

重启Nginx

完成配置后,重启Nginx以使配置生效:

sudo /usr/local/nginx/sbin/nginx -s reload

四、测试配置

1、本地测试:在本地计算机上的hosts文件中添加以下条目,将域名映射到服务器的IP地址:

192、168.31.130 example1.com
192、168.31.130 example2.com

在浏览器中分别访问http://example1.com和http://example2.com,看是否能够正确显示对应的站点内容。

2、线上测试:如果域名已经解析到了服务器的IP地址,可以直接在浏览器中输入域名进行测试。

五、总结

通过以上步骤,我们可以在Nginx中成功配置多域名,实现同一台服务器上通过不同域名访问不同站点内容的功能,这种配置方式不仅灵活,而且便于管理和维护,希望本文对您有所帮助,如有更多问题,请随时联系我们。

标签: nginx配置多域名 
排行榜
关于我们
「好主机」服务器测评网专注于为用户提供专业、真实的服务器评测与高性价比推荐。我们通过硬核性能测试、稳定性追踪及用户真实评价,帮助企业和个人用户快速找到最适合的服务器解决方案。无论是云服务器、物理服务器还是企业级服务器,好主机都是您值得信赖的选购指南!
快捷菜单1
服务器测评
VPS测评
VPS测评
服务器资讯
服务器资讯
扫码关注
鲁ICP备2022041413号-1