Как я могу настроить это в моей конфигурации Apache/HTAccess:Htaccess: Условный Аутентификация
Я хочу HTTP-аутентификации для всех файлов, с одним исключением. Файлы click.php
и js/clickheat.js
могут быть доступны из 1.2.3.4 без какой-либо проверки подлинности.
Я пробовал FilesMatch, но я не могу его инвертировать. Поэтому я не могу поставить require valid-user
. Я думал, используя SetEnv
, но как я могу проверить его позже?
<FilesMatch "(click\.php|clickheat\.js)">
# what here?
</FilesMatch>
Моя другая идея - использовать mod_rewrite. Ну, я могу разрешить доступ к двум файлам с данного хоста и запретить это из другого места. Но как я могу связать его с HTTP-аутентификацией?
# allows access to two files from the given IP
RewriteCond %{REMOTE_ADDR} 1\.2\.3\.4
RewriteCond %{REQUEST_URI} ^/click.php [OR]
RewriteCond %{REQUEST_URI} ^/js/clickheat\.js
RewriteRule (.*) - [L]
# denies everything else
RewriteRule (.*) - [F,L]
Так что мое любимое решение будет позволяет HTTP-Auth через RewriteCond/RewriteRule.
Фон (или почему я хочу это сделать): Я пытаюсь обеспечить установку clickheat (http://www.labsmedia.com/clickheat/index.html). И 1.2.3.4 - это удаленный запуск mod_proxy и перенаправление доступа к этим файлам на наш хост clickheat.