Meine Frage ist dieser sehr ähnlich: "Authentifizierung erforderlich" beim Anfordern von / anstelle von /index.php
In der obigen Frage ist es jedoch das Ziel, den Zugriff nur auf die Stamm-URL oder die Datei index.php zuzulassen und den Zugriff auf alle anderen Dateien und Unterverzeichnisse durch ein Kennwort zu schützen.
Eine ausgezeichnete Antwort wurde gegeben:
SetEnvIf Request_URI "^/$" allow=yes
SetEnvIf Request_URI "^/index.php$" allow=yes
AuthType Basic
AuthName "Password Required"
AuthUserFile /var/www/webinterface/.htpasswd
Options +FollowSymLinks
Order Deny,Allow
Satisfy any
Deny from All
Require valid-user
Allow from env=allow
Meine Frage ist umgekehrt: Ich möchte nur die Root-URL des Verzeichnisses oder die Datei index.php mit einem Passwort schützen und den freien Zugriff auf alle anderen Dateien im Verzeichnis ermöglichen. Als ich benutzt habe <FilesMatch "index.php">
Es ist mir gelungen, die Indexdatei zu schützen, aber die Root-URL ermöglichte den Zugriff.
Ich bin sicher, dass die Antwort für diejenigen von Ihnen, die mit htaccess besser vertraut sind als ich, offensichtlich ist. Wie schütze ich nur index.php und die Root-URL mit einem Passwort? Vielen Dank.
Antworten:
2 für die Antwort № 1Benutze es so:
SetEnvIfNoCase Request_URI "^/(index.php)?$" PROTECT
AuthType Basic
AuthName "Password Required"
AuthUserFile /var/www/webinterface/.htpasswd
Require valid-user
Satisfy any
Order Allow,Deny
Allow from All
Deny from env=PROTECT
- Regex-Muster
^/(index.php)?$
Wird zusammenpassen/
oder/index.php
und es setzt env variablePROTECT
Allow from All
erlaubt alle URIsDeny from env=PROTECT
verweigert env VariablePROTECT
0 für die Antwort № 2
Ich bin mir nicht sicher, ob Sie das wirklich wollen, aber was ist mit den Optionen? -Indexes
, so benutzt?
<Directory /www/somefolder>
Options -Indexes FollowSymLinks
AllowOverride None
</Directory>