我想知道 nginx 虚拟配置文件中是否可以有多个“fastcgi_index”...如果你查看下面的 virtual.conf,你会看到我把主页.php'index.php' 旁边的 home.php 或多或少就是我的站点的 index.php。我的站点运行正常(如果运行得更好,我就不会考虑是否可以进行任何调整),使用 index.php 作为 'fastcgi_index',但我甚至不确定为什么使用 index.php(除非它很可能是 'fastcgi_index' 的默认设置),因为我的站点使用的是 home.php 而不是 index.php。所以我的问题是...如果我将当前的 'fastcgi_index'(index.php)替换为 home.php,我的站点是否会运行得更好。或者我是否可以将两者都放入 'fastcgi_index',如下所示?
location ~ \.php$ {
root /home/xx/usr/share/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php **home.php;**
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi_params;
include fastcgi.conf;
答案1
不,fastcgi_index
只能接受单个文件名。这是因为 nginx 不会搜索指定的文件名,它只是将您提供的字符串附加到 URL(如果以斜杠结尾)并将其交给 FastCGI 服务。FastCGI 路径不必作为文件系统上的文件存在,因此 nginx 无法验证它们的存在。