关于nginx vhost 多站点配置
因为最近有两个项目需要同时上线,研究了一下nginx的vhost配置,记录一下过程。
1.首先需要添加解析二级域名
我用的是腾讯云平台,在控制台找到 云解析-域名解析列表
根据提示添加好二级域名。
这里我加了一条 bigdata.minoslee.cn的解析记录。
2. nginx 设置
- 找到 nginx.conf 文件
在配置文件后 增加一句
include vhost/*.conf;
表示会 加载 vhost目录下的 xxxx.conf子配置文件。
- 找到本目录下的 vhost目录
cd vhost/
vi bigdata.minoslee.cn.conf
注意新建的文件名后缀一定要是 .conf
- 编辑 vhost/xxxx.conf
这里只需要把主配置文件的 server{}区域复制过来,修改几个地方就行。
server
{
listen 80; #这里要把默认 default server 去掉,在主配置文件中同样要删除。
#listen [::]:80 default_server ipv6only=on;
server_name bigdata.minoslee.cn; #这里改成对应的二级域名
index index.html index.htm index.php;
root /home/wwwroot/default/bigdata/public; #改成对应的项目路径
include enable-php.conf;
location /{
try_files $uri $uri/ /index.php?$query_string;
}
3. 重启nginx
service nginx restart
如果遇到
nginx: [emerg] a duplicate default server for 0.0.0.0:80 in /etc/nginx/vhosts/
需要把 配置文件中的 listen 后面的 default server 删掉,只保留端口号即可。主配置文件中也要删除。
server {
listen 80;