设置nginx绑定多个域名

发布时间:2025-09-08 点击:25
nginx绑定多个域名,可把多个域名规则写一个配置文件里,也可分别建立多个域名配置文件,一般为了管理方便,建议每个域名建一个文件,有些同类域名也可写在一个总的配置文件里。
一、每个域名一个文件的写法
首先打开nginx域名配置文件存放目录:/usr/local/nginx/conf/servers ,如要绑定域名www.itblood.com 则在此目录建一个文件:www.itblood.com.conf然后在此文件中写规则,如:
server{
listen 80;
server_name www.itblood.com; #绑定域名
index index.htm index.html index.php; #默认文件
root /home/www/itblood.com; #网站根目录
include location.conf; #调用其他规则,也可去除
}
然后重起nginx服务器,域名就绑定成功了nginx服务器重起命令:/etc/init.d/nginx restart
二、一个文件多个域名的写法
一个文件添加多个域名的规则也是一样,只要把上面单个域名重复写下来就ok了,如:
server{
listen 80;
server_name www.itblood.com; #绑定域名
index index.htm index.html index.php; #默认文件
root /home/www/itblood.com; #网站根目录
include location.conf; #调用其他规则,也可去除
}
server{
listen 80;
server_name msn.itblood.com; #绑定域名
index index.htm index.html index.php; #默认文件
root /home/www/msn.itblood.com; #网站根目录
include location.conf; #调用其他规则,也可去除
}
三、不带www的域名加301跳转
如果不带www的域名要加301跳转,那也是和绑定域名一样,先绑定不带www的域名,只是不用写网站目录,而是进行301跳转,如:
server
{
listen 80;
server_name itblood.com;
rewrite ^/(.*) http://www.itblood.com/$1 permanent;
}
四、添加404网页
添加404网页,都可又直接在里面添加,如:
server{
listen 80;
server_name www.itblood.com; #绑定域名
index index.htm index.html index.php; #默认文件
root /home/www/itblood.com; #网站根目录
include location.conf; #调用其他规则,也可去除
error_page 404 /404.html;
}
四种规则方法,就可以自己独立解决nginx 多域名配置问题了。
配置多域名
方法一:多个的.conf方法(优点是灵活,缺点就是站点比较多配置起来麻烦)
这里以配置2个站点(2个域名)为例,n个站点可以相应增加调整,假设:
ip地址:192.168.1.100
域名1 example1.com放在/ www / example1
域名2 example2.com放在/ www / example2
配置nginx虚拟主机的基本思路和步骤如下:
把2个站点example1.com,example2.com放到nginx可以访问的目录/ www /
给每个站点分别创建一个nginx配置文件example1.com.conf,example2.com.conf,并把配置文件放到/ usr / local / nginx / vhosts /
然后在/usr/local/nginx/nginx.conf里面加一句包括进步2创建的配置文件全部包含进来(用*号)
重启nginx
1,打开/usr/local/nginx/nginix.conf文件,在相应位置加入包括把以上2个文件包含进来
用户www www;
worker_processes 1;
#主服务器错误日志
error_log /usr/local/nginx/log/nginx/error.log;
pid /usr/local/nginx/nginx.pid;
事件{
worker_connections 51200;
}
#主服务器配置
http {
包括mime.types;
default_type application / octet-stream;
log_format main’$ remote_addr – $ remote_user [$ time_local] $ request’
‘“$ status”$ body_bytes_sent“$ http_referer”’
‘“$ http_user_agent”“$ http_x_forwarded_for”’;
发送文件;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
gzip上
服务器{
听80
服务器名称 _;
access_log /usr/local/nginx/log/nginx/access.log main;
server_name_in_redirect关闭
位置 / {
root / usr / share / nginx / html;
index index.html;
}
}
#包含所有的虚拟主机的配置文件
包括/ usr / local / nginx / vhosts / *;
}
2,在/ usr / local / nginx下创建vhosts目录
mkdir / usr / local / nginx / vhosts
3,在/ usr / local / nginx / vhosts /里创建一个名字为example1.com.conf的文件,把以下内容拷进去
服务器{
听80
server_name example1.com www。example1.com;
access_log / www / access_ example1.log main;
位置 / {
root /www/example1.com;
index index.php index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root / usr / share / nginx / html;
}
#将php脚本传递给fastcgi服务器,侦听127.0.0.1:9000
位置?.php $ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param script_filename /www/example1.com/$fastcgi_script_name;
包括fastcgi_params;
}
位置?/.ht {
拒绝所有
}
}
4,在/ usr / local / nginx / vhosts /里创建一个名字为example2.com.conf的文件,把以下内容拷进去
服务器{
听80
server_name example2.com www。example2.com;
access_log / www / access_ example1.log main;
位置 / {
root /www/example2.com;
index index.php index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root / usr / share / nginx / html;
}
#将php脚本传递给fastcgi服务器,侦听127.0.0.1:9000
位置?.php $ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fast

SEO引擎优化分析站群舞弊的最有效方法
vps有用吗
备案核验编号核验单负责人已重新签字上传
最便宜的外国云服务器
山东云服务器报价
上大邮箱
商城云服务器费用
网站建好了怎么申请企业邮箱