Отключить аутентификацию htaccess для переписанного пути - PullRequest
0 голосов
/ 07 марта 2020

У меня есть следующий файл .htaccess с базовым c auth и перезаписью URL. Мне нужно отключить аутентификацию basi c для указанного пути c (например, '/ openaccess'), но сначала происходит перезапись, поэтому я не могу отключить аутентификацию с помощью SetEnvIf. Самое близкое, что я нашел, это этот ответ , но он не работает для меня на Apache 2.4.34.

RewriteEngine On
RewriteBase /
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule . /index.html [L]

AuthType Basic
AuthName "Restricted Content"
AuthUserFile /path/to/.htpasswd
Require valid-user

1 Ответ

0 голосов
/ 07 марта 2020

Кажется, работает следующее:

RewriteEngine On
RewriteBase /
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule . /index.html [L]

AuthType Basic
AuthName "Restricted Content"
AuthUserFile /path/to/.htpasswd

SetEnvIf Request_URI /openaccess  noauth=1

<RequireAny>
  Require env noauth
  Require env REDIRECT_noauth
  Require valid-user
</RequireAny>
...