在上方出现问题的场景中, nginx的配置文件大体如下:
server {
listen 80;
server_name localhost;
root /var/...400;
}
location ~ php$ {
return 500;
}
}
配置文件中两个正则匹配, 我的想法是这样的, 此时访问, 会返回响应吗 400,...至此, nginx的匹配规则基本上已经复现出来了.
按照优先级从高到低的顺序进行匹配
相同优先级的, 按照配置文件中的顺序进行匹配
当匹配到一条规则之后, 停止后续匹配....通过将php文件的解析配置单独放到一个配置文件php-fpm.conf.common文件中, 内容如下:
location ~ \.php${
// ...
}
这样, 原本的配置文件就可以改写成如下形式了...如果你有更好的方式, 还望不吝赐教.
----
经过几天的实验, 终于把nginx的执行顺序搞懂了, 感谢我的中学老师教会了我控制变量法.