阿里云Linux系统Nginx配置多个域名的方法

时间:2022-06-15 01:07:37

Nginx绑定多个域名,可通过把多个域名规则写一个配置文件里实现,也可通过分别建立多个域名配置文件实现,为了管理方便,建议每个域名建一个文件,有些同类域名则可写在一个总的配置文件里。

1. 比如我想建立两个站点的域名分别是www.A.com 和 www.B.com,将这两个域名都解析到同一服务器IP。

2. 在Nginx配置文件conf目录下创建一个专门存放虚拟主机配置的目录,命名为vhosts,可以把虚拟目录的配置全部放在这里。如本例创建名为vhosts_A.conf和vhosts_B.conf文件并打开,在里面写下相关的配置文件。

配置文件参考:

server {
    listen       80 default;#监听端口
    server_name  www.A.com;#绑定域名
    index index.html index.htm index.jsp login.jsp;#默认文件
    root /alidata/www/default;#网站根目录
    location /
    {
        proxy_pass http://127.0.0.1:8080;
        proxy_redirect off;
        proxy_set_header   Host    $host;
        proxy_set_header   X-Real-IP   $remote_addr;
        proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
    }
    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
    {
        expires 30d;
    }

location ~ .*\.(js|css)?$
    {
        expires 1h;
    }

access_log  /alidata/log/nginx/access/default.log;
}

3. 在nginx的主配置文件里,设置包含这两个站点的配置文件。

打开nginx.conf文件,在http{...}段输入

#包含所有的虚拟主机的配置文件 (填写服务器中vhosts_conf/*.conf所在绝对路径)
    include /alidata/server/nginx/conf/vhosts/*.conf;

4. 在指定的网站根目录下上传每个站点的文件

5. 重启nginx:/etc/init.d/nginx restart,测试是否访问正常