`
lionlx
  • 浏览: 285838 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

(转)配置 Nginx 子域名的泛解析

阅读更多
文章信息
作者:Fwolf    来源: Fwolf's Blog
标签: 泛解析
发布时间:2014-11-20 23:44:34
地址:http://www.fwolf.com/blog/post/453



简单记录:

需求描述
Web 服务器为 Nginx,希望配置泛子域名解析。 其实稍加修改,配置泛域名解析也不是难事。

不影响主域名,domain.com 和 www.domain.com 的 root 依然为 www 目录
子域名 sub.domain.com 的 root 希望放在 www-sub 目录下,其他子域名同理

解决及分析
在 Nginx 的配置文件中做如下配置(示意):

server {
        server_name
            domain.com
            www.domain.com
            *.domain.com
        ;
 
        set $subdomain '';
        if ($host ~* (\b(?!www\b).+)\.domain.com) {
            set $subdomain -$1;
        }
 
        root    /home/user/www$subdomain/;
    }


解释:

首先,在定义 server_name 时使用通配符 * ,使 Nginx 接受任意子域名的访问。

然后,对 $host 进行分析,找到子域名的名称。 这个正则表达式是在网上抄的,目的是为了在匹配子域名的同时, 不匹配 www 开头的访问和不带 www 的访问。 前面的 set 是因为 Nginx 的 If 没有 Else,所以默认先将 $subdomain 置空。

最后,在定义 root 的时候,使用 $subdomain 变量。
分享到:
评论

相关推荐

    nginx泛域名解析配置教程

    本教程将详细讲解如何在Nginx中配置泛域名解析,以便更好地管理和分发不同子域名的请求。 首先,我们需要理解Nginx的工作原理。Nginx是一个高性能的HTTP和反向代理服务器,它能根据配置规则将客户端的请求转发到...

    在nginx中设置三级域名的方法示例

    通过配置nginx可以设置一个IP地址下面通过不同的端口访问不同的Web应用,但是时间长了之后端口号和应用之间的关系就很模糊了。 如 http://120.79.79.XX:9001 和foreign.XXX.xin 虽然这两个网址都是指向同一个网站,...

    nginx 域名跳转nginx多域名向主域名跳转

    对于一些拥有多个子域名或不同形式域名(如 www 和非 www 版本)的网站来说,合理配置域名跳转可以提升用户体验、维护品牌形象并优化搜索引擎优化(SEO)。Nginx 是一种广泛使用的高性能 HTTP 服务器和反向代理...

    Nginx进行域名重写和泛域名解析配置的方法

    在Nginx中,域名重写和泛域名解析是两种常见的配置需求,它们对于网站的多域名管理和动态路由分配至关重要。下面将详细介绍这两种配置方法,并提供相关的示例代码。 ## 1. 域名重写 域名重写是指将用户请求的URL...

    Nginx端口映射配置方法

    配置Nginx端口映射的基本语法如下: ```nginx server { listen 80; # 监听的端口 server_name example.com; # 域名或者IP location / { proxy_pass http://127.0.0.1:8000; # 将80端口的请求转发到本地8000...

    Nginx泛解析到子目录后自动判断有无public目录详解

    标题中的“Nginx泛解析到子目录后自动判断有无public目录详解”是指在Nginx服务器配置中,如何实现一个功能,即当用户访问一个以特定后缀(如.app)的域名时,Nginx能够自动检测该域名对应的本地子目录下是否存在`...

    nginx将泛解析的匹配域名绑定到子目录配置方法

    在本文中,我们将深入探讨如何使用Nginx配置泛解析,以便将匹配的域名绑定到特定的子目录。泛解析是一种DNS设置,允许一个主域名处理所有可能的二级域名,通常用于提供不同服务或内容。这里我们将介绍两种不同的...

    超详细网站博客域名和二级域名、子域名升级HTTPS免费申请SSL证书配置nginx指南.docx

    ### 超详细网站博客域名和二级域名、子域名升级HTTPS免费申请SSL证书配置nginx指南 随着互联网技术的快速发展,网络安全成为了不容忽视的关键问题之一。HTTP作为一种基础的网络传输协议,尽管广泛应用于早期的...

    nginx.conf配置详细说明

    本文将深入解析Nginx的核心配置文件`nginx.conf`,帮助读者理解其背后的运行机制和配置选项。 一、Nginx.conf文件结构 `nginx.conf`是Nginx的全局配置文件,通常位于安装目录的`conf`子目录下。文件结构主要包括三...

    nginx实现一个域名配置多个laravel项目的方法示例

    在本示例中,我们将探讨如何使用Nginx配置一个域名以托管多个Laravel项目。Laravel是一个流行的PHP框架,而Nginx是一款高效的HTTP服务器和反向代理服务器,广泛用于部署Web应用。通过Nginx的配置,我们可以将一个主...

    子域名程序

    通过修改服务器配置文件(如Apache的httpd.conf或Nginx的nginx.conf),可以设定虚拟主机来处理不同子域名的请求。 4. **子域名的应用场景** - **多站点管理**:大型网站可能有多个子站,每个子站都有自己的子域名...

    nginx-1.14.2.zip

    虚拟主机是Nginx中实现多站点服务的关键,通过配置不同的vhost文件,可以将同一个IP地址的不同端口或者不同域名映射到不同的网站。 在使用"nginx-1.14.2.zip"时,主要步骤如下: 1. **解压缩**:将下载的zip文件...

    PHP版站群 全自动泛解析站群程序 赠送教程_PHP泛站_站群_

    "赠送教程"可能包含如何配置和优化该PHP站群程序的详细步骤,包括服务器环境设置(如PHP版本、MySQL数据库、Apache或Nginx服务器配置)、域名泛解析设置、SEO最佳实践以及如何避免被搜索引擎视为垃圾站点的技巧。...

    nginx配置文件中斜杠/的6种含义

    理解这些不同的用法对于优化Nginx的反向代理配置至关重要,因为它能帮助你精确控制请求如何被路由到后端服务,从而提升应用的性能和可用性。在实践中,应结合具体的应用架构和需求来决定使用哪种形式的`proxy_pass`...

    精通Nginx, Nginx开发参考

    - 通过配置Nginx实现静态资源与动态内容分离,提升网站性能。 - 示例配置:将图片、CSS、JS等静态资源直接返回给客户端,动态请求则转发给后端服务器处理。 - **场景二:高可用集群** - 构建Nginx作为负载均衡器...

    Nginx配置80端口访问8080及项目名地址方法解析

    在本文中,我们将详细讨论如何配置Nginx,使其能够通过80端口访问运行在8080端口上的Tomcat项目,并且在URL中不显示端口号和项目名。 首先,当用户通过浏览器输入如`http://example.com`这样的地址时,通常希望直接...

    nginx 全程学习资料全方面剖析。

    理解这些块的作用和层次关系对于正确配置Nginx至关重要。 3. **静态文件服务**:Nginx擅长处理静态文件请求,通过简单配置即可提供高效的静态资源服务,如HTML、CSS、JavaScript等文件。 4. **反向代理**:Nginx可...

    百度虚拟子栏目域名绑定

    2. **服务器配置**:在服务器端,比如使用Apache或Nginx等Web服务器,需要进行相应的配置以识别并处理新的子域名请求。这通常涉及到修改服务器的配置文件,如Apache的`.htaccess`或Nginx的`server`块,设置...

Global site tag (gtag.js) - Google Analytics