Nginx泛解析的匹配域名绑定到子目录配置

Linux225阅读模式

网站的目录结构为:

  1. # tree /home/wwwroot/linuxeye.com
  2. /home/wwwroot/linuxeye.com
  3. ├── bbs
  4. │   └── index.html
  5. └── www
  6.     └── index.html
  7. 2 directories, 2 files

/home/wwwroot/linuxeye.com为nginx的安装目录下默认的存放源代码的路径。

bbs为论坛程序源代码路径;www为主页程序源代码路径;把相应程序放入上面的路径通过;http://www.linuxeye.com 访问的就是主页http://bbs.linuxeye.com 访问的就是论坛,其它二级域名类推。

有2种方法,推荐方法一

方法一:

  1. server {
  2. listen 80;
  3. server_name ~^(?<subdomain>.+).linuxeye.com$;
  4. access_log /data/wwwlogs/linuxeye.com_nginx.log combined;
  5. index index.html index.htm index.php;
  6. root /home/wwwroot/linuxeye/$subdomain/;
  7. location ~ .php$ {
  8.     fastcgi_pass unix:/dev/shm/php-cgi.sock;
  9.     fastcgi_index index.php;
  10.     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  11.     include fastcgi_params;
  12.     }
  13. location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
  14.     expires 30d;
  15.     }
  16. location ~ .*\.(js|css)?$ {
  17.     expires 7d;
  18.     }
  19. }

方法二:

  1. server {
  2. listen 80;
  3. server_name *.linuxeye.com;
  4. access_log /home/wwwlogs/linuxeye.com_nginx.log combined;
  5. index index.html index.htm index.php;
  6. if ($host ~* ^([^\.]+)\.([^\.]+\.[^\.]+)$) {
  7.     set $subdomain $1;
  8.     set $domain $2;
  9. }
  10. location / {
  11.     root /home/wwwroot/linuxeye.com/$subdomain/;
  12.     index index.php index.html index.htm;
  13. }
  14. location ~ .php$ {
  15.     fastcgi_pass unix:/dev/shm/php-cgi.sock;
  16.     fastcgi_index index.php;
  17.     fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  18.     include fastcgi_params;
  19.     }
  20. location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
  21.     expires 30d;
  22.     }
  23. location ~ .*\.(js|css)?$ {
  24.     expires 7d;
  25.     }
  26. }
Mon Sep 14 15:06:57 CST 2015

 
  • 本文由 yeho 发表于 2015-09-14
  • 转载请务必保留本文链接:https://linuxeye.com/430.html
Linux

Nginx反向代理永久性缓存

Nginx缓存简介 Nginx缓存方式有两种: 永久性的缓存:这种缓存若不手动删除,该缓存文件会一直生效,因此,永久缓存只是用于缓存网站中几乎不会更改的内容; 临时缓存:这种缓存是根据请求连接进行哈希...
Linux

Nginx Lua Redis防止CC攻击

Nginx Lua Redis防止CC攻击实现原理:同一个外网IP、同一个网址(ngx.var.request_uri)、同一个客户端(http_user_agent)在某一段时间(CCseconds...
Linux

Keepalived+Nginx架构整理版

Keepalived介绍 keepalived是一个类似于layer3, 4, 5 交换机制的软件,也就是我们平时说的第3层、第4层和第5层交换。Keepalived的作用是检测web服务器的状态,如...
Nginx中文域名配置 Linux

Nginx中文域名配置

Nginx虚拟主机上绑定一个带中文域名,比如linuxeye.中国,浏览器不能跳转。 why? 因为操作系统的核心都是英文组成,DNS服务器的解析也是由英文代码交换,所以DNS服务器上并不支持直接的中...
    • 怪兽法师
      怪兽法师

      先收藏了。等会实践一下

      • ITYOY
        ITYOY

        oneinstack大法好~~

      匿名

      发表评论

      匿名网友
      确定

      拖动滑块以完成验证