我正在通过域中的任意子文件夹提供 Web 应用程序。例如
example.com/app-one (with example.com/app-one/page served by app-one)
example.com/folder/app-two (with example.com/folder/app-two/page served by app-two)
我有一个 nginx 配置,它在根级别运行良好,但我对如何处理子文件夹有点困惑。location /app-one
当然,我可以创建块,但我们有几十个这样的块,我们想避免必须明确指定每个块。
有什么方法可以try_files
基本上递归文件夹结构直到到达 index.php 文件?
server {
server_name example.com
location / {
root /srv/web/example.com;
index index.php index.html;
try_files $uri $uri/ /index.php?q=$q&$args;
}
# pass *.php files to the PHP tier
location ~ \.php$ {
root /srv/web/example.com;
include /etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass php:9000;
}
}
答案1
您的第一个位置声明应该关注子文件夹内的那些请求。
我想知道 nginx 的日志文件里有什么。