nginx根据二级域名自动匹配站点目录或根据域名匹配对应站点 Linux教程 nginx&apache



昨天给同事们分享一些简单的Nginx后,回家后突然想,我自己本地的环境其实可以折腾一通了
需求1:
公司的项目分开源版,企业版,专业版等。所以我一般的源码目录就是如下了

zentao_os
zentao_pro
zentao_ee
ranzhi_os
ranzhi_pro
chanzhi_os
chanzhi_pro

然后我自己解析了一个泛域名到我本地,举个粟子*.lvtao.org
平时开发的时候,就直接chanzhi_os.lvtao.org
之前的做法是,写了多个server配置文件,经过折腾,现在将根据二级域名的前缀,自动指向我对应的二级目录。

server {
    listen       80;
    server_name  ~^(?<domain>.+).lvtao.org$;
    root         /var/www/easysoft/$domain/www;
    index  index.html index.htm index.php;
    try_files $uri $uri/ /index.php$request_uri;
    include     php-fpm;
}

需求2:
然后平时还把www.a.com,一直到www.z.com都做了本地host映射,所以我之前就是建议了多个conf站点文件,a-z的。
现在就直接改成一个啦,配置如下

server {
    listen       80;
    server_name  ~^(www.)?(?<domain>.+).com$;
    root         /var/www/www.$domain.com;
    index  index.html index.htm index.php;
    try_files $uri $uri/ /index.php$request_uri;
    include     php-fpm;
}

好方便的有没有,哈哈哈。。。主要是配置文件少了,哪天想www.aa.com的时候,直接在/var/www站点目录下建个www.aa.com的目录就可以访问了。不用去配置nginx了,当然。个别站点的话,对伪静态有要求或不相同的时候,可能就需要另外折腾了。。。


签名:这个人很懒,什么也没有留下!
最新回复 (0)
返回