Apache 2.4 验证匿名用户但允许其他人通过 IP

bto*_*rge 6 .htaccess flask apache-2.4

我正在尝试将 Apache 配置为允许用户从选择的 IP 访问 Flask 应用程序而无需身份验证,但要向任何其他用户挑战凭据。

就目前情况而言,我有以下配置:

<directory /var/www/flaskapp>
    WSGIProcessGroup flaskapp
    WSGIApplicationGroup %{GLOBAL}
    WSGIScriptReloading On
    WSGIPassAuthorization On
    Order deny,allow
    AuthType Basic
    AuthName "Restricted area - authorised users only"
    AuthUserFile "/usr/local/apache/passwd"
    <RequireAll>
        <RequireAny>
            Require ip 1.1.1.1
         </RequireAny>
        Require valid-user
    </RequireAll>
</directory>
Run Code Online (Sandbox Code Playgroud)

这不起作用,而是提示所有用户进行身份验证。

我应该提到我曾经在配置中指示htpasswd的位置创建一个用户文件/usr/local/apache/passwd

Ger*_*der 11

你只需要RequireAny条件:

<RequireAny> 和 </RequireAny> 用于包含一组授权指令,其中一个必须成功才能使 <RequireAny> 指令成功。

<RequireAny>
    Require ip 1.1.1.1
    Require valid-user
</RequireAny>
Run Code Online (Sandbox Code Playgroud)