帮助中心 >  技术知识库 >  云服务器 >  服务器教程 >  Nginx泛解析匹配域名绑定到子目录配置

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

2017-01-17 00:33:55 8549


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


网站的目录结构为:

  • # tree /home/wwwroot/xxx.com

  • /home/wwwroot/xxx.com

  • ├── bbs

  • │ └── index.html

  • └── www

  • └── index.html

  • 2 directories, 2 files


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

bbs为论坛程序源代码路径

www为主页程序源代码路径

把相应程序放入上面的路径通过

http://www.landui.com 访问的就是主页

http://www.landui.com 访问的就是论坛

其它二级域名类推。

有2种方法,推荐方法一


方法一:

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

access_log /home/wwwlogs/xxx.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;

}

}



提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: