Nginx配置多域名映射方法(本地hosts)

Nginx配置多域名映射方法(本地hosts)

本地测试网站的时候如果不想用localhost/xxxx的形式访问,可能就需要修改hosts文件来映射了,但是一个网站还好,假如有多个网站的话就不行了。

这时就需要配置多域名映射

比如hosts中配置的映射:

127.0.0.1    www.xxxx.com
127.0.0.1    bbs.xxxx.com

这两个本地域名映射的ip都一样,如何确定跳转的网站呢?就要看web服务器上面多域名的配置了

本例使用windows下集成环境wnmp

wnmp即windows+nginx+mysql(MariaDB)+php

首先在wnmp根目录建立一个vhosts文件夹,里面用来存放相关域名的配置文件,比如我的两个域名一个是www,一个是bbs,就建立两个conf文件

www.xxxx.com.conf
bbs.xxxx.com.conf

bbs配置文件的内容如下,另一个同理:

server {
    listen 80;
    server_name bbs.xxxx.com;
    # access_log logs / access_bbs.log main;这里注释掉了
    location / {
        root html / discuz;
        index index.php index.html index.htm;
    }
    error_page 500 502 503 504 / 50x.html;
    location = /50x.html {

root html;

}

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

location ~ \.php$ {

    fastcgi_pass 127.0.0.1:9000;

    fastcgi_index index.php;

    fastcgi_param SCRIPT_FILENAME html/discuz / $fastcgi_script_name;
        include fastcgi_params;
    }
    location~ / \.ht {
        deny all;
    }
}

其中红色的地方就是要改的地方

第一个地方也就是域名了,改成自己的,多个域名用空格隔开。

后面两个discuz是网站的目录名,就是在web服务器目录下面的那个文件夹名字

然后需要在nginx.conf文件中引用这两个文件

打开nginx.conf,在文件最后的结束大括号前面添加如下代码:

# 包含所有的虚拟主机的配置文件
include ..\vhosts\www.xxxx.conf; 
include ..\vhosts\bbs.xxxx.conf; 

这里用的相对路径,也可以改成绝对路径

之后重启nginx服务器即可,不要忘了本地hosts的映射

你可能感兴趣的:(分布式架构开发,nginx,运维)