【nginx】一台nginx服务器多域名配置_林家阿酒的博客-CSDN博客_nginx server_name 多个域名


本站和网页 https://blog.csdn.net/wzl505/article/details/53213939 的作者无关,不对其内容负责。快照谨为网络故障时之索引,不代表被搜索网站的即时页面。

【nginx】一台nginx服务器多域名配置_林家阿酒的博客-CSDN博客_nginx server_name 多个域名
【nginx】一台nginx服务器多域名配置
林家阿酒
于 2016-11-18 10:58:22 发布
70282
收藏
分类专栏:
配置
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/wzl505/article/details/53213939
版权
配置
专栏收录该内容
11 篇文章
1 订阅
订阅专栏
Nginx强大的正则表达式支持,可以使server_name的配置变得很灵活,如果你要做多用户博客,那么每个用户拥有自己的二级域名也就很容易实现了。 下面说说server_name的使用吧: server_name的匹配顺序 Nginx中的server_name指令主要用于配置基于名称虚拟主机,server_name指令在接到请求后的匹配顺序分别为: 1、准确的server_name匹配,例如:
server {
listen 80;
server_name ssdr.info www.ssdr.info;
...
2、以*通配符开始的字符串:
server {
listen 80;
server_name *.ssdr.info;
...
3、以*通配符结束的字符串:
server {
listen 80;
server_name www.*;
...
4、匹配正则表达式:
server {
listen 80;
server_name ~^(?.+)\.howtocn\.org$;
...
Nginx将按照1,2,3,4的顺序对server name进行匹配,只有有一项匹配以后就会停止搜索,所以我们在使用这个指令的时候一定要分清楚它的匹配顺序(类似于location指令)。 server_name指令一项很实用的功能便是可以在使用正则表达式的捕获功能,这样可以尽量精简配置文件,毕竟太长的配置文件日常维护也很不方便。下面是2个具体的应用: 在一个server块中配置多个站点:
server
listen 80;
server_name ~^(www\.)?(.+)$;
index index.php index.html;
root /data/wwwsite/$2;
站点的主目录应该类似于这样的结构: /data/wwwsite/ssdr.info/data/wwwsite/linuxtone.org /data/wwwsite/baidu.com/data/wwwsite/google.com 这样就可以只使用一个server块来完成多个站点的配置。 在一个server块中为一个站点配置多个二级域名 。 实际网站目录结构中我们通常会为站点的二级域名独立创建一个目录,同样我们可以使用正则的捕获来实现在一个server块中配置多个二级域名:
server
listen 80;
server_name ~^(.+)?\.howtocn\.org$;
index index.html;
if ($host = ssdr.info){
rewrite ^ http://www.ssdr.info permanent;
root /data/wwwsite/ssdr.info/$1/;
站点的目录结构应该如下: /data/wwwsite/ssdr.info/www//data/wwwsite/ssdr.info/nginx/ 这样访问www.ssdr.info时root目录为/data/wwwsite/ssdr.info/www/,nginx.ssdr.info时为/data/wwwsite/ssdr.info/nginx/,以此类推。 后面if语句的作用是将ssdr.info的方位重定向到www.ssdr.info,这样既解决了网站的主目录访问,又可以增加seo中对www.ssdr.info的域名权重。 多个正则表达式 如果你在server_name中用了正则,而下面的location字段又使用了正则匹配,这样将无法使用$1,$2这样的引用,解决方法是通过set指令将其赋值给一个命名的变量:
server
listen 80;
server_name ~^(.+)?\.howtocn\.org$;
set $www_root $1;
root /data/wwwsite/ssdr.info/$www_root/;
location ~ .*\.php?$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /data/wwwsite/ssdr.info/$fastcgi_script_name;
include fastcgi_params;
Nginx不同域名反向代理到另一台服务器 proxy_pass和$host 想让一个VPS专门做另一个VPS的前端,后端VPS每添加一个域名,前端VPS就要同时添加一个域名来反向代理,作为前端的VPS如果一个一个的添加后端VPS的域名,那么这个事情特别麻烦,能不能让其自动反向代理后端VPS呢,用到proxy_pass和$host就可以轻松实现。 以下例子为了省事,以lnmp为安装环境进行设置 修改前端VPS的nginx.conf文件,修改成以下内容:
server {
listen 80;
server_name $host;
location / {
proxy_pass http://www.31.gd/;
proxy_set_header Host $host;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_connect_timeout 60;
proxy_read_timeout 600;
proxy_send_timeout 600;
下面的一并修改吧。
location /.(php|php5)?$
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fcgi.conf;
location /status {
stub_status on;
access_log off;
location /.(gif|jpg|jpeg|png|bmp|swf)$
expires 30d;
location /.(js|css)?$
expires 12h;
这样就可以实现了前端VPS可以反向代理任意域名到后端VPS,只要将域名解析到前端VPS,后端VPS进行域名绑定,那么就可以直接访问到了 一台nginx带多个域名多个tomcat情况的配置 多个域名,其中2个域名需支持泛域名解析: 1、www.abc.com 2、www.bcd.com 3、*.efg.com 4、*.hij.com 其中1,2,3为一台tomcat,4为独立tomcat。前端一台nginx,通过配置多个虚拟主机来实现该部署。 进入/etc/nginx/conf.d目录,所有虚拟主机的配置文件都在该目录下存放,配置。 配置支持泛域名
# A virtual host using mix of IP-, name-, and port-based configuration
server {
listen 81;
server_name *.efg.com;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# A virtual host using mix of IP-, name-, and port-based configuration
server {
listen 81;
server_name *.hij.com;
location / {
proxy_pass http://localhost:8081;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
泛域名解析关键为红色部分,如果没有红色部分,后端8080及8081口对应的tomcat虚拟主机将无法获得域名信息,导致后端tomcat无法获取到对应的域名信息。 后端TOMCAT支持泛域名解析时,需要设置 host name 为 localhost 以支持泛域名指向。 Nginx 多域名配置 nginx绑定多个域名可又把多个域名规则写一个配置文件里,也可又分别建立多个域名配置文件,我一般为了管理方便,每个域名建一个文件,有些同类域名也可又写在一个总的配置文件里。一、每个域名一个文件的写法 首先打开 nginx域名配置文件存放目录:/usr/local/nginx/conf/servers ,如要绑定域名www.web126.com 则在此目录建一个文件:www.web126.com.conf 然后在此文件中写规则,如:
server
listen 80;
server_name www.web126.com; #绑定域名
index index.htm index.html index.php; #默认文件
root /home/www/web126.com; #网站根目录
include location.conf; #调用其他规则,也可去除
然后重起nginx服务器,域名就绑定成功了。 Nginx服务器重起命令:/etc/init.d/nginx restart。二、一个文件多个域名的写法 一个文件添加多个域名的规则也是一样,只要把上面单个域名重复写下来就ok了,如:
server
listen 80;
server_name www.web126.com; #绑定域名
index index.htm index.html index.php; #默认文件
root /home/www/web126.com; #网站根目录
include location.conf; #调用其他规则,也可去除
server
listen 80;
server_name msn.web126.com; #绑定域名
index index.htm index.html index.php; #默认文件
root /home/www/msn.web126.com; #网站根目录
include location.conf; #调用其他规则,也可去除
三、不带www的域名加301跳转 如果不带www的域名要加301跳转,那也是和绑定域名一样,先绑定不带www的域名,只是不用写网站目录,而是进行301跳转,如:
server
listen 80;
server_name web126.com;
rewrite ^/(.*) http://www.web126.com/$1 permanent;
四、添加404网页 添加404网页,都可又直接在里面添加,如:
server
listen 80;
server_name www.web126.com; #绑定域名
index index.htm index.html index.php; #默认文件
root /home/www/web126.com; #网站根目录
include location.conf; #调用其他规则,也可去除
error_page 404 /404.html;
最后还有一个方法需要注意,可能有需要禁止IP直接访问80端口或者禁止非本站的域名绑定我们的IP,这样的话应该 如下处理,放到最前一个server上面即可:
server{
listen 80 default;
server_name _;
return 403;
学会上面四种规则方法,基本就可以自己独立解决nginx 多域名配置问题了。
林家阿酒
关注
关注
点赞
收藏
打赏
评论
【nginx】一台nginx服务器多域名配置
Nginx强大的正则表达式支持,可以使server_name的配置变得很灵活,如果你要做多用户博客,那么每个用户拥有自己的二级域名也就很容易实现了。下面说说server_name的使用吧:server_name的匹配顺序Nginx中的server_name指令主要用于配置基于名称虚拟主机,server_name指令在接到请求后的匹配顺序分别为:1、准确的server_name匹配,例如:...
复制链接
扫一扫
专栏目录
nginx配置多域名访问以及完整配置
09-11
对nginx进行详细的访问数量,日志请求头配置,多域名分发,反向代理等配置,可以对手机访问进行判断重定向手机域名
详细nginx多域名配置的方法
01-10
前言
Nginx强大的正则表达式支持,可以使server_name的配置变得很灵活,nginx多域名配置是在配置文件中建立多个server配置,在每个server配置中用server_name来对域名信息进行过滤。
实现方法如下:
举个例子,下面是一个conf文件:
server
listen 80;
server_name www.web1.com; #绑定域名
index index.htm index.html index.php; #默认文件
root /home/www.web1.com; #网站根目录
include location.conf;
参与评论
您还未登录,请先
登录
后发表或查看评论
Nginx定义域名访问方式
01-09
最近在搭建Nginx,做到域名访问的时候总是访问不了。
nginx的配置文件nginx.conf中server配置如下:
server {
listen 80;
server_name hehe.weige.com;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html-hehe;
index index.html index.htm;
配置完之后 在sbin 目录下执行命令 ./nginx -s reload 重新加载配置文件
加载之后浏览器地
一台服务器通过nginx配置多个域名(80端口)
软件老王
06-25
1万+
文章目录1. 问题描述2. 解决方案3. 方案说明
1. 问题描述
多个域名对应一个服务器,为了避免域名后增加端口号,两个域名都需要占用80端口号,使用nginx来进行配置。
2. 解决方案
目前项目中,线上正在使用(100%可用)多域名对应一个服务器情况(线上ip及域名替换了下)
#user nobody;
worker_processes 1;
#error_log logs/erro...
nginx同一iP多域名配置方法
热门推荐
大爱无疆的博客
11-05
2万+
nginx绑定多个域名可又把多个域名规则写一个配置文件里,也可又分别建立多个域名配置文件,我一般为了管理方便,每个域名建一个文件,有些同类域名也可又写在一个总的配置文件里。
一、每个域名一个文件的写法
首先打开nginx域名配置文件存放目录:/usr/local/nginx/conf/servers ,如要绑定域名www.itblood.com 则在此目录建一个文件:www.it
Nginx是什么??
最新发布
m0_67094505的博客
10-26
1009
我们只 需要将请求发送到反向代理服务器,由反向代理服务器去选择目标服务器获取数据后,在返 回给客户端,此时反向代理服务器和目标服务器对外就是一个服务器,暴露的是代理服务器 地址,隐藏了真实服务器 IP 地址。说的通俗一点就是,比如我们有些系统只能在规定的内网中才能访问,比如我们的公司的系统,只能在公司的内网才能登录公司系统。增加服务器的数量,然后将请求分发到各个服务器上,将原先请求集中到单个服务器上的 情况改为将请求分发到多个服务器上,将负载分发到不同的服务器,也就是我们所说的负 载均衡。
Nginx多域名多Server反向代理配置
忆未来 YZTWZ.COM
09-25
3639
Nginx多域名多Server反向代理配置
Nginx强大的正则表达式支持,可以使server_name的配置变得很灵活,如果你要做多用户博客,那么每个用户拥有自己的二级域名也就很容易实现了。
下面我就来说说server_name的使用吧:
server_name的匹配顺序
nginx中的server_name指令主要用于配置基于名称虚拟主机,server_name指令在接到请求后的匹
Nginx 配置多域名方法
Super乐De博客
06-09
5219
配置第一个站点截图如下:
第一处标红位置:为了多站点配置,做下铺垫。
第二处标红位置:是自己修改的端口号和自己域名,开始nginx.conf默认的端口号是80,为了避免已被使用,所以建议直接修改。
第三处标红位置:是php-fpm的端口,自己可以 netstat -ntlp 查看一下当前Linux下被占用的端口,可以发现127.0.0.1:9000已被使用而且是php-fpm。
至此,第一个域名已经配置完成。可以访问自己Linux的IP查看一下。如下图所示
图中是显示的当前PHP的信息,.
Nginx vhost 多域名配置
weixin_33735077的博客
10-20
343
方法一:多个.conf方法(优点是灵活,缺点就是站点比较多配置起来麻烦)
这里以配置2个站点(2个域名)为例,n 个站点可以相应增加调整,假设:
IP地址: 192.168.1.100
域名1 example1.com 放在 /www/example1
域名2 example2.com 放在 /www/example2
配置 nginx virtu...
nginx 配置指令之server_name
congge_study的博客
05-22
1万+
nginx 配置指令之server_name
nginx server_name 含义
Malik的博客
03-21
4665
nginx server_name 含义
nginx配置:server_name的作用
xiejianweifdd的博客
02-13
1万+
nginx的server_name最新详解
Nginx中server_name指令介绍
冷酷的小白
02-15
9595
Nginx中server_name指令介绍
用途
根据官方文档说明,用来设置虚拟服务器,对于用IP还是请求头部中的Host字段内容设置这个指令的值,没有明确的分别。
用法
指令后跟特定域名,此时第一个域名为主域名
server_name example.com www.example.com;
指令后跟泛域名
server_name example.com *.example.com www.example.*;
特别的,example.com和*.example.com可以合并为一个,语法为
serv
Nginx中server_name 参数详解
一起coding,一起嗨。
04-07
1922
Nginx中的server_name指令主要用于配置基于名称的虚拟主机,server_name指令在接到请求后的匹配顺序分别为:
1、准确的server_name匹配,例如:
server {
listen 80;
server_name domain.com www.domain.com;
...
2、以*通配符开始的字符串:
server {
listen 80;
server_name *.domain.c
nginx多域名配置方案
zhupengcheng2020的博客
06-03
598
Nginx强大的正则表达式支持,可以使server_name的配置变得很灵活,如果你要做多用户博客,那么每个用户拥有自己的二级域名也就很容易实现了。
下面我就来说说server_name的使用吧:
server_name的匹配顺序
Nginx中的server_name指令主要用于配置基于名称虚拟主机,server_name指令在接到请求后的匹配顺序分别为:
1、准确的server_name匹配,例如:
server {
listen 80;
server_name ssdr.info www.ssdr.
nginx-配置多域名
猛犸象
06-15
227
1、在nginx.conf 所在目录新建 includes 目录
2、将nginx.conf中的 server 块 替换为 include includes/*.conf
3、编辑 C:\Windows\System32\drivers\etc\hosts
增加
127.0.0.1 localhost
127.0.0.1 ucapi.com
127.0.0.1 ucdb.com
4、在 inclu...
nginx server_name使用_nginx系列:server及server_name的意义详解
weixin_39594439的博客
12-23
4596
阅读文本大概需要3分钟。 当Nginx接到请求后,会匹配其配置中的server模块。匹配方法就是靠请求携带的host和port正好对应其配置中的server_name 和listen。如果做过ip和域名绑定,ip和域名二者是对等的。server_name指令主要用于配置基于名称的虚拟主机,server_name指令在接到请求后的匹配顺序的优先级分别为:1、准确的server_n...
nginx 的server_name配置详解
shadow_zed的博客
05-23
3994
作用
server name 为虚拟服务器的识别路径。因此不同的域名会通过请求头中的HOST字段,匹配到特定的server块,转发到对应的应用服务器中去。
案例
修改nginx.conf
server {
listen 80;
server_name www;
location / {
default_type text/html;
content_by_lua '
ngx.say("<p>first</...
nginx配置server_name 参数详解
carcoon的专栏
02-28
5495
Nginx中的server_name指令主要用于配置基于名称的虚拟主机,server_name指令在接到请求后,
将按照下面1,2,3,4的匹配顺序对server name进行匹配,只有有一项匹配以后就会停止搜索,所以我们在使用这个指令的时候一定要分清楚它的匹配顺序(类似于location指令)。
匹配顺序
1、准确的server_name匹配,例如:
server {
listen 80;
server_name domain.com www.domain.com;
配置Nginx的ServerName
路~可以走过
06-23
1915
文章目录1.概述DNS域名服务器2.安装Bind3.配置Bind4.DNS正向解析的配置5.DNS反向解析的配置
1.概述DNS域名服务器
DNS称为域名解析服务(Domain Name System)是用于解析域名与IP地址对应关系的服务,功能上可以实现正向解析与反向解析
正向解析:根据域名找到对应IP地址
反向解析:根据IP地址找到对应域名
DNS域名服务的拓扑图:
单靠几台域名服务器是不行的,因此域名服务器的工作模式分为:主服务器、从服务器、缓存服务器
2.安装Bin
详解Nginx虚拟主机配置中server_name的具体写法
chimangwan3067的博客
08-10
2259
server_name指令可以设置基于域名的虚拟主机,根据请求头部的内容,一个ip的服务器可以配置多个域名。下面这些server_name的参数是有效的:
server_name jb51.net;
server_name jb51.net www.jb51.net;
server_name ...
“相关推荐”对你有帮助么?
非常没帮助
没帮助
一般
有帮助
非常有帮助
提交
©️2022 CSDN
皮肤主题:大白
设计师:CSDN官方博客
返回首页
林家阿酒
CSDN认证博客专家
CSDN认证企业博客
码龄8年
暂无认证
117
原创
3万+
周排名
2万+
总排名
68万+
访问
等级
5065
积分
114
粉丝
109
获赞
40
评论
436
收藏
私信
关注
热门文章
【百度】怎么使用cookie登陆百度账号
76173
【nginx】一台nginx服务器多域名配置
70282
【数据库】完美卸载sql server 2008 r2
44038
【JS】获取当前时间,时间与时间戳之间的转换
38984
【共享】解决 因为文件共享不安全,所以你不能连接到文件共享。此共享需要过时的SMB1协议
28123
分类专栏
wordpress
34篇
数据库
1篇
odoo
18篇
python
2篇
经验
46篇
配置
11篇
编程
21篇
运营
6篇
最新评论
【百度】怎么使用cookie登陆百度账号
@梦于月光中:
cookie没有写正确
【odoo】在宝塔面板使用Docker安装odoo社区版及第三方模块
wolfwzy:
错误:无
nginx:[emerg]在/www/server/panel/vhost/nginx/proxy/ginde.mwcm.cc/0a8f125a3f41f36c0507203a63cde9ad_ginde.mwcm.cc.conf中的上游“ginde.pwcm.cc”中找不到主机:5
nginx:配置文件/www/server/nginx/conf/nginx。conf测试失败(反向代理设置后 出现这个 不可以设置)
【bootstrap】对于不同设备实现某一div块的自动隐藏或者显示
echo-lin:
引用「en-xs」
dsdsd
【wordpress】bbPress支持用户上传图片并限制文件类型及大小
Mr FF:
修改之后,没有在文章发表栏目显示出图片插入的按钮
【wordpress】wordpress开启子目录多站点模式并给子站绑定独立域名
林家阿酒:
应该是重定向的问题,在.htaccess文件最前面增加强制重定向。
# BEGIN HTTPS Forced Redirect
# The directives (lines) between "BEGIN HTTPS Forced Redirect" and
# "END HTTPS Forced Redirect" are dynamically generated, and should
# only be modified via the filters. Any changes to the directives between
# these markers will be overwritten.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>
# END HTTPS Forced Redirect
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
提交
最新文章
【服务器】WordPress 站点迁移服务器过程问题总结
404 Not Found 在此服务器上找不到请求的URL
403 Forbidden 服务器无法读取HTACCESS文件,拒绝安全访问
2022年4篇
2021年10篇
2020年25篇
2019年24篇
2018年26篇
2017年23篇
2016年23篇
目录
目录
分类专栏
wordpress
34篇
数据库
1篇
odoo
18篇
python
2篇
经验
46篇
配置
11篇
编程
21篇
运营
6篇
目录
评论
被折叠的 条评论
为什么被折叠?
到【灌水乐园】发言
查看更多评论
打赏作者
林家阿酒
你的鼓励将是我创作的最大动力
¥2
¥4
¥6
¥10
¥20
输入1-500的整数
余额支付
(余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付
您的余额不足,请更换扫码支付或充值
打赏作者
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。
余额充值