[CentOS-de] Problem mit .htaccess
Andreas Meyer
a.meyer at nimmini.de
Mo Apr 22 10:41:25 UTC 2019
Hallo!
Klaus Tachtler <klaus at tachtler.net> schrieb am 22.04.19 um 06:53:57 Uhr:
> Hallo Andreas,
>
> um Dir besser helfen zu können, wären natürlich Deine
> Konfigurationsdateien sehr hilfreich, jedoch wenn Du das nicht
> möchtest, erst einmal folgendes, was Du überprüfen solltest:
>
> ----- %< -----
>
> AllowOverride-Direktive:
> (https://httpd.apache.org/docs/2.4/de/mod/core.html#allowoverride)
> =======================
>
> Wenn der Server eine .htaccess-Datei (wie durch AccessFileName
> definiert) findet, muss er wissen, welche in der Datei angegebenen
> Direktiven frühere Konfigurationsanweisungen überschreiben dürfen.
> Nur in <Directory>-Abschnitten verfügbar
>
> AllowOverride ist nur in <Directory>-Abschnitten gültig, die ohne
> reguläre Ausdrücke definiert wurden, nicht in <Location>-,
> <DirectoryMatch>- oder <Files>-Abschnitten.
>
> ---> WICHTIG !!!
>
> Wenn diese Anweisung auf None gesetzt wird, dann werden
> .htaccess-Dateien komplett ignoriert. In diesem Fall wird der Server
> nicht einmal versuchen, die .htaccess-Dateien im Dateisystem zu lesen.
>
> Wenn diese Anweisung auf All gesetzt wird, dann ist jede Direktive in
> den .htaccess-Dateien erlaubt, die den Kontext .htaccess besitzt.
>
> WICHTIG !!! <---
>
> Der Direktiven-Typ kann z.B. eine der folgenden Anweisungsgruppen sein:
> =======================================================================
>
> AuthConfig
> Erlaubt die Verwendung von Autorisierungs-Anweisungen
> (AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType,
> AuthUserFile, Require usw.).
> usw. ...
>
> ----- %< -----
>
> Eine Möglichkeit wäre den Inhalt der .htaccess einfach z.B. in den die
> /etc/httpd/conf/httpd.conf, direkt in die <Directory>...</Directory>
> Konfiguration zu packen:
>
> z.B.
>
> <Directory "/var/www/root">
> Options -Indexes +FollowSymLinks
> AllowOverride AuthConfig
> AuthType Basic
> AuthName "Passwort bitte!"
> AuthBasicProvider file
> AuthUserFile /etc/httpd/user/memd5.pwd"
> Require user me
> </Location>
>
> Das setzt natürlich auch eine entsprechend gültige PAsswortdatie:
> /etc/httpd/user/memd5.pwd voraus!
>
> (Siehe auch: https://httpd.apache.org/docs/2.4/programs/htpasswd.html)
>
> >
> > Require user me
> > AuthType Basic
> > AuthName "Passwort bitte!"
> > AuthUserFile /etc/httpd/user/memd5.pwd
> >
> > greift aber nicht.
Ich konnte das Problem lösen.
Gesetzt hatte ich am Anfang der .htaccess
Require user me
AuthType Basic
AuthName "Passwort bitte!"
AuthUserFile /etc/httpd/user/memd5.pwd
dann folgen ein paar
SetEnvIfNoCase User-Agent "AESOP_com_SpiderMan" bad_bot
SetEnvIfNoCase User-Agent "Alexibot" bad_bot
SetEnvIfNoCase User-Agent "Anonymouse.org" bad_bot
.....
und dann kommt am Ende
<Limit GET POST HEAD>
<RequireAll>
Require all granted
Require not env bad_bot
</RequireAll>
</Limit>
Dieses Require all granted am Ende überschreibt das
Require user me am Anfang. Kommentiere ich das am Ende
aus und habe dann nur noch Require not env bad_bot,
greift die Authentifizierung am Anfang der .htaccess
Danke für eure Unterstützung!
Grüße
Andreas
--
PGP-Fingerprint: D392 5D21 0299 63D7 5BAE 4562 1E56 B2EA 81A2 59F1
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname : nicht verfügbar
Dateityp : application/pgp-signature
Dateigröße : 228 bytes
Beschreibung: Digitale Signatur von OpenPGP
URL : <http://lists.centos.org/pipermail/centos-de/attachments/20190422/5abd8ebc/attachment.sig>
Mehr Informationen über die Mailingliste CentOS-de