2013-01-24 8 views
5

Kommend von Apache2 eine Funktion, die ich nicht erreichen kann; erfordern Authentifizierung nur für externen Zugriff, aber freien Zugriff auf Benutzer in meinem lokalen Netzwerk. Irgendwelche Ideen, wie man dieses Szenario leicht handhaben kann?Nginx-Authentifizierung außer denen im lokalen Netzwerk

Jede Hilfe wäre willkommen.

Antwort

5

Ich habe meine Antwort gelöscht und möchte eine Lösung vorzuschlagen ich unter

bereitgestellt habe ich ein wenig Suche gemacht und diese Lösung für Ihr Problem gefunden - In Code, in dem Sie auth_basic verwenden Richtlinie, machen solche Änderungen:

satisfy any; 
allow  10.0.0.1/8 // give access for all internal request 
deny  all; 
auth_basic "...."  // your auth_basic code goes here 
auth_basic_user_file ... // your auth_basic_user_file goes here 

Wie funktioniert es? satisfy Direktive bedeutet, dass any oder all von nächsten kommenden Zugriffsregeln übergeben werden müssen, um den Zugriff auf die Ressource zu ermöglichen. Sie können weitere Informationen finden Sie hier: satisfy

Dies sollte Ihr Problem passen perfekt;)

+0

versucht eine Variable hinzufügen, aber es scheint, dass nginx es nicht mag: nginx -t [emerg]: „AUTH_BASIC "Direktive ist hier nicht erlaubt – Stefan

+0

Verwenden Sie Ihre Authentifizierung für den gesamten Server (im' server' Block) oder nur in einigen 'location' Blöcken? – emka86

+0

im Block "location /". – Stefan