SanCi

设置nginx绑定多个域名
由于群晖底层使用的是NGINX,为了PHOTO STATION 外网访问,又重温了一下NGINX的域名绑定配置规则...
扫描右侧二维码阅读全文
20
2018/10

设置nginx绑定多个域名

由于群晖底层使用的是NGINX,为了PHOTO STATION 外网访问,又重温了一下NGINX的域名绑定配置规则。
(群晖的nginx总配置文件为:/etc/nginx/nginx.conf,更细的配置文件在目录:/usr/syno/share/nginx/,请小心修改

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

首先进入nginx域名配置文件存放目录:/etc/nginx/conf.d
cd /etc/nginx/conf.d
比如现需要绑定域名 www.san.ci ,则在此目录建一个文件:www.san.ci.conf , 然后在此文件中写规则。
vi www.san.ci.conf
输入 i 编辑新建的配置文件

一、每个域名一个文件的写法

server{
listen 80;
server_name www.san.ci; #绑定域名
index index.htm index.html index.php; #默认文件
root /home/www/sanci; #网站根目录
include location.conf; #调用其他规则,如无需要,需删除此项
}

然后重起nginx服务器,域名就绑定成功了! nginx服务器重起命令:/etc/init.d/nginx restart

二、一个文件多个域名的写法
一个文件添加多个域名的规则,只需要把单个域名的配置重复写就ok了,
如(同一个站点绑定2个不相同的域名):

server{
listen 80;
server_name www1.san.ci; #绑定 域名1
index index.htm index.html index.php; #默认文件
root /home/www/sanci; #网站根目录
include location.conf; #调用其他规则,如无需要,需删除此项
}

server{
listen 80;
server_name www2.san.ci; #绑定 域名2
index index.htm index.html index.php; #默认文件
root /home/www/sanci; #网站根目录
include location.conf; #调用其他规则,如无需要,需删除此项
}

三、不带www的域名加301跳转
如果不带www的域名要加301跳转到带WWW的域名,操作也是和绑定域名一样的;
先绑定不带www的域名,只是不用写网站目录,而是直接进行301跳转,
如:

server
{
listen 80;
server_name san.ci;
rewrite ^/(.*) http://www.san.ci/$1 permanent;
}

四、添加404网页
添加404网页,可以直接在配置文件里面添加,如:

server{
listen 80;
server_name www.san.ci; #绑定域名
index index.htm index.html index.php; #默认文件
root /home/www/sanci; #网站根目录
include location.conf; #调用其他规则,如无需要,需删除此项
error_page 404 /404.html; #404页面
}

编辑好文件后,按 Esc 退出编辑,并输入 :wq 保存退出。

nginx其它命令:
执行命令 nginx -t 检查配置是否有误,并按照报错提示修复错误。
执行命令 service nginx restart 重启 Nginx 服务。
执行命令 service nginx reload 重新载入 Nginx 服务。

以上四种规则方法结合灵活应用,基本就可以自己独立解决nginx 多域名配置问题了。


随机一言(显示内容与本文关)
Last modification:October 22nd, 2018 at 09:31 am
If you think my article is useful to you, please feel free to appreciate

Leave a Comment