我查找到的所有配置都无法帮助设置 Nginx 以在已安装的 USB 文件夹上提供 PHP 文件。目前,file not found
当我尝试访问 USB 上的 PHP 文件时,但在默认文件夹中访问 PHP 文件时 PHP 显示正确/usr/share/nginx/www
。
换句话说,如果我有一个test.php
in/media/usb/downloads/
并尝试访问sitename.com/usb/test.php
我会得到file not found
.但是,如果我把它放进/usr/share/nginx/www/
去就可以了。在这两种情况下,静态文件都可以正常工作。
我已经使用默认值安装了 nginx 和 php5-fpm,但添加了以下更改:
nginx/启用站点/默认
location /usb/ {
alias /media/usb/downloads/;
autoindex on;
allow 127.0.0.1;
allow ::1;
#deny all;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php5-fpm.sock;
include fastcgi_params;
}
答案1
我强烈怀疑这种情况正在发生,因为该指令按原样location ~ \.php$
发送请求,并且在服务器上找不到目录。http://sitename.com/usb/index.php
unix:/var/run/php5-fpm.sock
/usb/
您是否考虑过使用根目录中调用的链接 ( ln
)来代替使用别名?usb
/media/usb/downloads
location