我的Nginx配置抛出404,.php
例如:
## Any other attempt to access PHP files returns a 404.
location ~* ^.+\.php$ {
return 404;
}
但是我在子文件夹中有一些index.php文件要运行。当前配置如下:
location = /sitename/subpage/index.php {
fastcgi_pass phpcgi; #where phpcgi is defined to serve the php files
}
location = /sitename/subpage2/index.php {
fastcgi_pass phpcgi;
}
location = /sitename/subpage3/index.php {
fastcgi_pass phpcgi;
}
它工作正常,但是问题是重复的位置,如果有很多子页面,则配置会变得很大。
我尝试了*和一些正则表达式之类的通配符,它表示nginx测试已通过,但未加载页面(即404)。我尝试的是:
location = /sitename/*/index.php {
fastcgi_pass phpcgi;
}
location ~* ^/sitename/[a-z]/index.php$ {
fastcgi_pass phpcgi;
}
有什么办法可以在该位置使用正则表达式或通配符作为路径名吗?
+
固定它。