如何在特定路径中为nginx匹配php脚本编写位置

时间:2014-03-13 08:29:11

标签: regex nginx

我有一个php应用程序迁移到nginx,网站结构如下,

|-aaa
|-bbb
|--ccc
|---ccc.php
|---ddd
|----ddd.php
|--eee
|-fff
|-index.php

这是我的conf

location ~ ^/(?!bbb).*\.php {
    try_files $uri =404;
    fastcgi_split_path_info  ^(.+\.php)(.*)$;
    set $fsn index.php;
    if (-f $document_root$fastcgi_script_name){
        set $fsn $fastcgi_script_name;
    }
    fastcgi_pass   127.0.0.1:9000;
    include fastcgi_params;
}

location ~ ^/bbb/ccc/ddd/ {
    index ddd.php;
    allow all;
}

location ~ ^/(bbb) {
    deny  all;
}

我可以访问除bbb文件夹下的所有php文件,我也可以访问ddd.php文件。但是ddd.php不是作为php脚本处理的。

0 个答案:

没有答案