Ich versuche, den Quecksilberzugriff mit Apache http zu konfigurieren. Es erfordert eine Authentifizierung. Mein /etc/apache2/sites-enabled/mercurial
sieht so aus:
NameVirtualHost *:8080
<VirtualHost *:8080>
UseCanonicalName Off
ServerAdmin webmaster@localhost
AddHandler cgi-script .cgi
ScriptAliasMatch ^(.*) /usr/lib/cgi-bin/hgwebdir.cgi/$1
</VirtualHost>
Jedes Tutorial, das ich im Internet lese, fordert mich auf, folgende Zeilen einzufügen:
AuthType Basic
AuthUserFile /usr/local/etc/httpd/users
Aber wenn ich es tue, bekomme ich den folgenden Fehler:
# /etc/init.d/apache2 reload
Syntax error on line 8 of /etc/apache2/sites-enabled/mercurial:
AuthType not allowed here
Meine Distribution ist ein angepasstes Ubuntu namens Turnkey Linux Redmine
apache-2.2
authentication
httpd
mercurial
http-authentication
Jader Dias
quelle
quelle
<Location /opt/mcmap/shapefiles.php> AuthType Kerberos AuthName KerberosLogin KrbServiceName HTTP/intranet.spectrumasa.com KrbMethodNegotiate On KrbMethodK5Passwd On KrbAuthRealms DOMAIN.COM Krb5KeyTab /etc/httpd/conf/intranet.keytab require valid-user Options Indexes MultiViews FollowSymLinks AllowOverride All Order allow,deny Allow from all SetOutputFilter DEFLATE </Location>
require valid-user
Teil verpasst . Ein vollständiges Beispiel kann eine wunderbare Sache sein. Vielen Dank.<Location />
auf jeden Fall beim Laden der Konfigurationsdatei keinen Syntaxfehler bekommen.<Location />
bearbeitet<Location>
, aber nichts über den wahren Grund in der Antwort selbst gesagt? In Apache gibt es keine<Location>
Direktive (dh keine ohne Standort). Das macht jetzt definitiv Ärger. ;) (Siehe zB oben.)Ich lasse Apache2 auf Ubuntu 10.04 laufen - das gleiche Problem und danke für die Lösung. Ich stellte fest, dass ich die Konfiguration eingeben musste
/etc/apache2/apache2.conf
Sie können den Benutzernamen und das Passwort mit htpasswd generieren. Neue Datei:
So hängen Sie eine vorhandene Datei an:
quelle
Sie können einen Standort oder ein Verzeichnis schützen. Fügen Sie für ein Verzeichnis Folgendes hinzu:
Sie können auch hinzufügen
Deny
undAllow
für eine feinere Kontrolle Richtlinien.quelle
Es hört sich so an, als würden Sie die Authentifizierungseinstellungen in der angeben
VirtualHost
. In der Regel werden diese Einstellungen in derDirectory
Direktive angegeben.Sie können auch
.htaccesss
Dateien verwenden, aber die Angabe in der Apache-Konfig ist eine gute Standardeinstellung, da sie weniger exponiert ist.Apache-Dokumentation
quelle
Ich starte Apache2 auf Ubuntu 10.10. Ich hatte Probleme mit allen oben genannten Lösungen, aber das hat gut funktioniert (von Apache Docs):
Der größte Unterschied zu den obigen Antworten scheint die Anweisung AuthBasicProvider zu sein, die auf "file" gesetzt ist, und die Anweisung Require, die das Bit "user" vor dem tatsächlichen Benutzernamen enthält.
Hoffe das hilft jemandem.
quelle
Wir verwenden eine speicheroptimierte Version von Apache und sind auf dieses Problem gestoßen.
Dies lag daran, dass die folgende Zeile in der Apache-Konfiguration nicht vorhanden war:
quelle