我在基本的auth procted文件夹中遇到子文件夹问题。在受保护的文件夹中,我有一个名为phpmyadmin的文件夹,其中包含phpmyadmin。当基本激活时,我无法运行phpmyadmin。当我调用该文件夹时,我得到一个另存为对话框(类型:application / octet-stream(18,3 KB))。
这里是mysites-available / default
的重要部分location ^~ /administration/ {
auth_basic "Restricted Area";
auth_basic_user_file /var/www/myproject/sec/htpasswd;
}
location ~ \.php$ {
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
任何想法,我如何在基本身份验证的子文件夹中运行php?
答案 0 :(得分:6)
您可以重复location ~ \.php$
块内的/administration/
块。
作为一种解决方法,我也成功地使用了这个设置,这使我免于在复杂场景中反复重复PHP配置。
location ^~ /administration/ {
auth_basic "Restricted Area";
auth_basic_user_file /var/www/myproject/sec/htpasswd;
location ~ \.php$ {
try_files /dummy/$uri @php;
}
}
location ~ \.php$ {
try_files /dummy/$uri @php;
}
location @php {
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
它基本上使用named location进行PHP配置。不幸的是你无法在任何地方使用这样的位置。但它适用于try_files
。您应该确保服务器上没有目录/dummy/
。