2010-12-17 4 views
4

Ich verwende das Front-Controller-Muster und so werden alle Anfragen durch meine index.php-Datei geleitet. Ich möchte den 'Admin' Controller (erreichbar unter mysite/admin /) mit .htpasswd sichern. Das einzige Problem ist, 'Admin' ist kein Verzeichnis, sondern nur ein Mod_rewrite. Kann das gemacht werden?Kann ich .htpasswd verwenden, um ein nicht vorhandenes Verzeichnis (ein virtuelles Verzeichnis mod_rewrite) zu sichern?

+0

Woher kommt das Umschreiben Punkt? –

+0

Es * möglich * möglich sein, indem Sie die 'Zulassen von/Verweigern von 'Anweisungen in eine Bedingung, überprüft' REQUEST_URI' für das Admin-Verzeichnis –

+0

Ich denke, Sie können die Direktiven zum Schutz dieser URL mit grundlegenden Auth in einem '' setzen Abschnitt ... oder vielleicht müssen Sie die neu geschriebene URL schützen. – Nathan

Antwort

2

Es gibt nicht nur einen Weg, ich bin mir ziemlich sicher. Sie können die Zugriffskontrolle mit mod_rewrite und [F] für alle Kriterien erstellen, die Sie definiert hätten. Siehe zum Beispiel Access control with mod_rewrite. Das heißt, Sie können das perfekt machen.

<Location /admin> 
    [here your rules] 
</Location> 

Die Require Richtlinie hat für context Verzeichnis, das bedeutet, dass Sie es den Kontext

<Directory>, <Location>, <Files>, and <Proxy> 

verwenden :)