我正试图在rewrite
旁边使用try_files
。理想情况下,我希望Nginx首先尝试原始URI。如果这不起作用,请尝试控制器/controllers/$1.php
。最后,只需重定向到索引。这就是我到目前为止(我已经牺牲了上面提到的理想的简洁顺序):
location / {
if (-f /controllers/$uri) {
rewrite ^(.*)$ /controllers/$1.php last;
return 403;
}
try_files $uri $uri/ /index.php;
}
但这似乎不起作用。有什么想法吗?
答案 0 :(得分:4)
location / {
try_files $uri $uri/ /controllers$uri.php;
location ~ \.php$ {
try_files $uri /index.php;
#
# fastcgi/proxy_pass php configuration
#
}
}