如何使用Nginx进行身份验证的用户目录

前端之家收集整理的这篇文章主要介绍了如何使用Nginx进行身份验证的用户目录前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在使用基于Debian的主机并使用NginxPHP-FPM,我想在Nginx中启用用户目录,并希望多用户支持基本身份验证.这意味着Alex打开www.example.com/rutorrent;这将提示登录和密码,并在验证后,这应该指向他自己的PHP脚本版本位于/ home / alex / www / rutorrent,当Bob将打开www.example.com/rutorrent;这将提示登录和密码和身份验证后这应该指向他的PHP脚本位于/ home / bob / www / rutorrent.

我已经尝试过这里的官方文档:
http://wiki.nginx.org/UserDir

但我不确定如何将它们配置为默认文件,以便我可以获得我想要的功能,我的默认配置文件Nginx在这里:

server {
    server_name localhost;

    location / {
          try_files $uri $uri/ /index.html;
    }

    location /doc/ {
           alias /usr/share/doc/;
           autoindex on;
           allow 127.0.0.1;
           allow ::1;
           deny all;
     }

     index index.PHP index.html index.htm;
     location ~ ^/~([^/]*)(.*)\.PHP${
            fastcgi_split_path_info ^(.+\.PHP)(/.+)$;
            fastcgi_pass unix:/var/run/PHP5-fpm.sock;
            auth_basic "Restricted";
            auth_basic_user_file /etc/Nginx/sites-available/.htpasswd;
            fastcgi_param SCRIPT_FILENAME /home/$1/www$2.PHP;
            include fastcgi_params;

     }

     location ~ ^/~([^/]*)(.*) {
            autoindex on;
            alias /home/$1/www$2;
            auth_basic "Restricted";
            auth_basic_user_file /etc/Nginx/sites-available/.htpasswd;
     }

      location /RPC2 {
            include scgi_params;
            scgi_pass localhost:5000;
     }


}

有没有办法得到这个?

最佳答案
感谢帮助我,我有线索修复用户目录问题,我在主Nginx配置文件中使用$remote_user变量,在$remote_user变量中使用Nginx捕获用户名,同时我们使用基本身份验证,因此非常好用且易于使用用户目录如果我们以这种方式包括

/home/$remote_user/..

猜你在找的Nginx相关文章