Назад | Перейти на главную страницу

Передайте базовые учетные данные аутентификации в .htaccess, перезапишите в защищенную папку

У меня есть две папки, F1 и F2, в моей общей папке, в каждой из которых есть файл .htaccess. F1 защищен базовой аутентификацией в .htaccess, например:

AuthName "Restricted Area" 
AuthType Basic 
AuthUserFile /home/myaccount/.htpasswd
AuthGroupFile /dev/null 
require valid-user

Я переписываю URL-адрес из F2 в F1, например:

RewriteRule ^f2file\.php$ ../F1/f1file.php [NC,L]

Эта перезапись работает, но мне бросается в глаза базовая авторизация, которую я установил в F1. Есть ли способ отправить базовые учетные данные для аутентификации при перезаписи или обойти базовую аутентификацию при перезаписи из локальной папки?

Я пробовал установить переменную среды, как в этот вопрос:

SetEnvIf Request_URI ^f2file\.php$ ADD_BASIC_AUTH
RequestHeader set Authorization "Basic XXXXXXXX" env=ADD_BASIC_AUTH

Где XXXXXXXX - значение user: pass в кодировке base 64, как описано в вопросе выше. Но это не работает, у меня все еще возникают проблемы с учетными данными, может быть, потому, что я не выполняю перезапись в качестве прокси? Любые идеи? Спасибо!

Поскольку папка F1 защищена паролем, для доступа ко всему, к чему осуществляется доступ непосредственно в этой папке, требуется пароль. Возможно, вы могли бы использовать символическую ссылку из папки F2 на файл, необходимый в папке F1. Тогда клиенты будут обращаться к файлу по F2 вместо F1, и пароль не потребуется.

ln -s ../F1/f1file.php f2file.php