Я добавил защиту htpasswd, используя для аутентификации файл htaccess, теперь я хочу обойти аутентификацию для www.website.com
а также www.website.com/index.php
где оба URL обращаются к файлу index.php. Используя ниже htaccess файл, я позволил index.php, и я могу обойти www.website.com/index.php
URL, но не www.website.com
Мой файл htaccess:
# set an environtment variable "noauth" if the request starts with "/callbacks/"SetEnvIf Request_URI ^/index.php noauth=1
AuthType Basic
AuthName "RESTRICTED"#AuthName "Restricted Area"
AuthUserFile "/path/to/.htpasswd"
require valid-user
Options -Indexes
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^.]+)$ /file.php?show=all&name=$1 [L]
# Here is where we allow/deny
Order Deny,Allow
Satisfy any
Deny from all
Require valid-user
Allow from env=noauth
Я считаю, что 2-й параметр просто использует регулярное регулярное выражение. Может быть, вы можете просто сделать index.php необязательным.
SetEnvIf Request_URI "^/(index\.php)?$" noauth=1
Не проверял.
Других решений пока нет …