使用 Apache 和 Nginx 进行外部连接的文件夹密码

使用 Apache 和 Nginx 进行外部连接的文件夹密码

我想使用用户名和密码保护文件夹。仅当从网络外部访问服务器时才需要密码。(192.168.0.0/24)

我尝试使用 .htaccess,但它忽略了我的satisfy any

AuthType Basic
AuthName "pw"
AuthUserFile /var/www/folder/.htpasswd
Require valid-user
Order allow,deny
Allow from 192.168.0.0/255.255.255.0
satisfy any

我不确定这Allow from行是否正确。Nginx 将标头转发到 Apache,因此 Apache 也可以看到“真实 IP”。

使用 nginx 密码保护会更容易吗?

答案1

通过使用 nginx 解决了这个问题。

    location /folder/ {
    proxy_pass http://localhost:8080/folder/;
    satisfy  any;
    allow  192.168.0.0/24;
    deny   all;
    auth_basic            "pw";
    auth_basic_user_file  /var/www/folder/.htpasswd;

    include /etc/nginx/proxy_params;
    }

相关内容