Frage

Das ist das Gegenteil Problem von den meisten über die ich gelesen habe. Ich bin Ubuntu 8.04 auf einem Amazon-Instanz mit Apache 2.2.8 läuft und ich kann nicht herausfinden, warum AllowOverride auf keine für root Einstellung nicht stoppen meine .htaccess-Datei aus enthalten sind.

Ich habe ein Unterverzeichnis mit hello.py darin und einer .htaccess-Datei. Als ich in die Datei zu suchen, es funktioniert gut mit Mod_python die Datei dient. Wenn ich einige Müll in .htaccess setzen erhalte ich einen Server-Fehler, so dass ich weiß, dass die .htaccess-Datei verwendet wird. Auch wenn ich die .htaccess-Datei löschen, hello.py ist nicht mehr Server von Mod_python -. Statt der Browser versucht, sie zu öffnen

In einem meiner sites-available (verlinkt in sites-enabled), ich habe "AllowOverride None" für das Stammverzeichnis. Ich dachte, dass diese .htaccess verhindern würde, von der Wurzel enthalten sind und alle seine Unterverzeichnisse, die dazu führen sollte hello.py nicht von mod_python bedient werden. Allerdings bleibt es serviert wird fein und ich kann das .htaccess testet noch enthalten ist, weil, wenn ich es ändern, ich die Ergebnisse in meinem Browser zu sehen.

Vielleicht gibt es etwas, was ich nicht über meine Datei in sites-enabled bin zu verstehen. Dies ist die Datei, die ich bin mit:

NameVirtualHost *:8080 
<VirtualHost *:8080>
<Directory />
AllowOverride None
</Directory>
</VirtualHost>

Vielen Dank für jede Hilfe.

War es hilfreich?

Lösung

Der Grund für die Datei nicht über mod_python bedient wird, wenn Sie .htaccess löschen, weil das Setup für mod_python darin befindet. Wenn Sie das Zeug, um Ihre Websites verfügbare Datei verschieben, können Sie .htaccess zu löschen, ein Auge zudrücken, um das Problem, und nennen es einen Tag.

Wenn das nicht zufrieden ist, dann, warum .htacess überhaupt gelesen wird, kann ich nicht sagen. Sie sind richtig, dass AllowOverride None sollte verhindert, dass die Datei von je gelesen zu werden. Haben Sie die Möglichkeit in Betracht gezogen, dass Sie etwas nach oben geschraubt, wenn die virtuelle Website hinzufügen? Versuchen Sie, einige Müll in die Config zu werfen und sehen, ob es beschwert sich, nur um sicherzustellen, dass es überhaupt gelesen hat wird.

Andere Tipps

AllowOverride nur in <Directory> Schnitte erlaubt ist, so haben Sie alles richtig gemacht.

Ein Problem, das Sie haben könnten, ist, dass andere (Teil-) <Directory> Schnitte gesetzt AllowOverride auf etwas anderes als None. Das wird die Einstellung für diese Unterverzeichnisse außer Kraft setzen. Ich benutze

<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
<Directory /var/www/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride AuthConfig 
    Order allow,deny
    allow from all
</Directory>

und in /var/www (mein docroot) Ich kann .htaccesses verwenden.

Der Grund, warum mod_python funktioniert nicht mehr, wenn Sie Ihre .htaccess löschen ist, dass mod_python Setup-Dateien in der Regel in .htaccess ist.

Wenn Sie weitere Informationen benötigen, sprechen Sie uns Ihre Konfiguration senden.

PS: In der Tat verknüpft die docuementation oben sagt, dass Sie sollten nie gesetzt AllowOverride etwas nicht in None <Directory />

.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top