nginx中server配置的共同部分抽取linux反向代理php - LiberXue|FullStack|独立开发者|jekyll blog|GitHub blog

# nginx中server配置的共同部分抽取linux反向代理php

发布时间：2017-06-20 00:00:00 博客分类: nginx 阅读次数: comments
nginx (2) server (2) php (1) linux (2) 反向代理 (1)

# nginx中server配置的共同部分抽取linux反向代理php

2017-06-20 00:00:00

nginx (2) server (2) php (1) linux (2) 反向代理 (1)

如下所示:

    server {
        listen       80;
        server_name  dev.drpb.com;
        root /Users/Stone/repo/oschina/drsoft/page-builder;
        location ~ \.php$ {
            fastcgi_index  index.php;
            fastcgi_pass  127.0.0.1:9000;
            include fastcgi.conf;
        }
    }
    server {
        listen       80;
        server_name  dev.drp.com;
        root /Users/Stone/repo/oschina/drsoft/site;
        location ~ \.php$ {
            fastcgi_index  index.php;
            fastcgi_pass  127.0.0.1:9000;
            include fastcgi.conf;
        }
    }

在`nginx`配置中有两个`server`配置块, 它们有共同的`php`反向代理配置部分.

请问如何将:

    location ~ \.php$ {
        fastcgi_index  index.php;
        fastcgi_pass  127.0.0.1:9000;
        include fastcgi.conf;
    }

抽取出来放到一个地方，而不是在每个server中都写一次(我试着放到其共同父级的http块中是不可以的)，谢谢!

已找到答案：

将location部分抽取到一个外部文件，如命名为：common_rules.conf，放到nginx目录下。

修改server配置为:

    server {
        server_name  dev.drpb.com;
        root /Users/Stone/repo/oschina/drsoft/page-builder;
        include common_rules.conf;
    }
    server {
        server_name  dev.drp.com;
        root /Users/Stone/repo/oschina/drsoft/site;
        include common_rules.conf;
    }

本文由 liberxue 创作，采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外，均为本站原创或翻译，转载前请务必署名
最后编辑时间为:2017-06-20 00:00:00