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

 更新时间:2014年03月12日 09:22:58   投稿:zxhpj  
这篇文章主要介绍了nginx将泛解析的匹配域名绑定到子目录配置方法,需要的朋友可以参考下

网站的目录结构为:

 # tree /home/wwwroot/exehack.net
/home/wwwroot/exehack.net
├── bbs
│   └── index.html
└── www
    └── index.html
2 directories, 2 files

/home/wwwroot/exehack.net为nginx的安装目录下默认的存放源代码的路径。
bbs为论坛程序源代码路径;www为主页程序源代码路径;把相应程序放入上面的路径通过;http://www.exehack.net 访问的就是主页http://bbs.exehack.net 访问的就是论坛,其它二级域名类推。
有2种方法,推荐方法一

 server {
listen 80;
server_name ~^(?<subdomain>.+).exehack.net$;
access_log /data/wwwlogs/exehack.net_nginx.log combined;
index index.html index.htm index.php;
root /home/wwwroot/linuxeye/$subdomain/;
location ~ .php$ {
  fastcgi_pass unix:/dev/shm/php-cgi.sock;
  fastcgi_index index.php;
  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  include fastcgi_params;
  }
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
  expires 30d;
  }
location ~ .*\.(js|css)?$ {
  expires 7d;
  }
}

方法二、

 server {
listen 80;
server_name *.exehack.net;
access_log /home/wwwlogs/exehack.net_nginx.log combined;
index index.html index.htm index.php;
if ($host ~* ^([^\.]+)\.([^\.]+\.[^\.]+)$) {
  set $subdomain $1;
  set $domain $2;
}
location / {
  root /home/wwwroot/exehack.net/$subdomain/;
  index index.php index.html index.htm;
}
location ~ .php$ {
  fastcgi_pass unix:/dev/shm/php-cgi.sock;
  fastcgi_index index.php;
  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  include fastcgi_params;
  }
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
  expires 30d;
  }
location ~ .*\.(js|css)?$ {
  expires 7d;
  }
}

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

复制代码 代码如下:

server {
    listen        80;
    server_name   domain.com    *.domain.com;

    if ($host ~* ^([^\.]+)\.([^\.]+\.[^\.]+)$) {
        set $subdomain $1;
        set $domain $2;
    }

    location / {
        root    /home/wwwroot/$domain/$subdomain/;
        index   index.php index.html index.htm;
        #include /home/wwwroot/$domain/$subdomain/.ngx.htaccess;
    }

    error_page   500 502 503 504  /50x.html;

    location = /50x.html {
        root   html;
    }

    location ~ \.php$ {
        root           /home/wwwroot/$domain/$subdomain/;
        fastcgi_pass   127.0.0.1:9100;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
}

相关文章

  • 教你快速构建一个基于nginx的web集群项目

    教你快速构建一个基于nginx的web集群项目

    本文教你快速构建一个基于nginx的4/7层负载均衡的web集群项目,项目步骤本文给大家介绍介绍,对nginx web集群项目感兴趣的朋友一起看看吧
    2021-11-11
  • Nginx配置多端口多域名访问的实现

    Nginx配置多端口多域名访问的实现

    这篇文章主要介绍了Nginx配置多端口多域名访问的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • win10安装配置nginx的过程

    win10安装配置nginx的过程

    这篇文章主要介绍了win10安装配置nginx的过程,帮助大家更好的理解和使用nginx服务器,感兴趣的朋友可以了解下
    2020-10-10
  • Nginx中的location路径映射问题

    Nginx中的location路径映射问题

    这篇文章主要介绍了Nginx中的location路径映射问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • 使用Nginx实现根据 IP 匹配指定 URL

    使用Nginx实现根据 IP 匹配指定 URL

    最近的一个项目,需要特定的IP访问某专题页面的时候跳转到网站首页,思考了下,直接使用NGINX实现,分享给大家。
    2014-09-09
  • Nginx下301重定向域名的方法小结

    Nginx下301重定向域名的方法小结

    在网站建设中需要网页重定向的情况很多:如网页目录结构变动,网页重命名、网页的扩展名改变、网站域名改变等。
    2010-08-08
  • Nginx Rewrite模块应用的几种场景

    Nginx Rewrite模块应用的几种场景

    这篇文章主要介绍了Nginx Rewrite模块应用的几种场景,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • Nginx图片防盗链配置实例

    Nginx图片防盗链配置实例

    这篇文章主要介绍了Nginx图片防盗链配置实例,并对代码做了详细的说明,让你充分理解配置的意图,需要的朋友可以参考下
    2014-07-07
  • Nginx反向代理与负载均衡概念理解及模块使用

    Nginx反向代理与负载均衡概念理解及模块使用

    这篇文章主要为大家介绍了Nginx反向代理与负载均衡概念理解及模块说明,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-03-03
  • Nginx的HA高可用的搭建的实现

    Nginx的HA高可用的搭建的实现

    高可用是一种系统设计策略,旨在确保服务或应用在面对硬件故障、软件缺陷或任何其他异常情况时,仍能持续稳定地运行,本文主要介绍了Nginx的HA高可用的搭建,感兴趣的可以了解一下
    2024-08-08

最新评论