LinuxEye - Linux系统教程

LinuxEye - Linux系统教程

当前位置: 主页 > Linux配置 >

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

时间:2015-09-14 15:16来源:Linux运维笔记 编辑:yeho 点击:
网站的目录结构为: # tree /home/wwwroot/linuxeye.com / home / wwwroot / linuxeye . com ├── bbs │ └── index . html └── www └── index . html 2 directories , 2 files /home/wwwroot/linuxeye.com为nginx的安装目

网站的目录结构为:

# tree /home/wwwroot/linuxeye.com
/home/wwwroot/linuxeye.com
├── bbs
   └── index.html
└── www
    └── index.html

2 directories, 2 files

/home/wwwroot/linuxeye.com为nginx的安装目录下默认的存放源代码的路径。
bbs为论坛程序源代码路径
www为主页程序源代码路径
把相应程序放入上面的路径通过
https://linuxeye.com 访问的就是主页
http://bbs.linuxeye.com 访问的就是论坛
其它二级域名类推。

有2种方法,推荐方法一

方法一:

server {
listen 80;
server_name ~^(?<subdomain>.+).linuxeye.com$;
access_log /data/wwwlogs/linuxeye.com_nginx.log combined;
index index.html index.htm index.php;
root /home/wwwroot/shop/$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 *.linuxeye.com;
access_log /home/wwwlogs/linuxeye.com_nginx.log combined;
index index.html index.htm index.php;

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

location / {
    root /home/wwwroot/$domain/$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;
    }
}
原文:https://blog.linuxeye.com/430.html

转载请保留固定链接: https://linuxeye.com/configuration/2812.html

------分隔线----------------------------
标签:nginx泛解析
栏目列表
推荐内容