, nginx没有执行第二个匹配规则, 没有将文件交由php-fpm解析器执行, 进而导致其作为静态文件直接下载....此时, 如果能够匹配到php的规则, 那么就会返回响应码200, 如果不能, 应该提示找不到文件. 测试一下.
?
至此说明匹配到 ^~ 规则的时候, 就会直接执行而不进行后续的匹配了....400;
}
location ~ php$ {
return 500;
}
}
配置文件中两个正则匹配, 我的想法是这样的, 此时访问, 会返回响应吗 400,...至此, nginx的匹配规则基本上已经复现出来了.
按照优先级从高到低的顺序进行匹配
相同优先级的, 按照配置文件中的顺序进行匹配
当匹配到一条规则之后, 停止后续匹配....通过将php文件的解析配置单独放到一个配置文件php-fpm.conf.common文件中, 内容如下:
location ~ \.php${
// ...
}
这样, 原本的配置文件就可以改写成如下形式了