Warum wird .htaccess
nicht alle Unterverzeichnisse zwingen, SSL zu verwenden?Unterverzeichnis kann nicht an SSL umgeleitet werden
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]
RewriteBase /wordpress/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
Mein besonderer Anwendungsfall: Ich Wordpress in einem Unterverzeichnis installiert habe, und ich bin mit mod_rewrite
zu „verstecken“, dass von meinen Website-Besuchern (docs in example.com/wordpress
gespeichert ist, sondern an den Browser als example.com
erscheinen) . Alles gut dort. Ich habe das HTTPS-Rewrite nach Anweisungen hinzugefügt, die in unzähligen Posts gefunden wurden. Aber wenn ich zu example.com/nextcloud
blättern werde alle Dateien über HTTP serviert!
Es gibt eine .htaccess
Datei in meinem /nextcloud
Unterverzeichnis. Der einzige Abschnitt mod_rewrite
Zusammenhang lautet wie folgt:
RewriteEngine on
RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteRule ^\.well-known/host-meta /public.php?service=host-meta [QSA,L]
RewriteRule ^\.well-known/host-meta\.json /public.php?service=host-meta-json [QSA,L]
RewriteRule ^\.well-known/carddav /remote.php/dav/ [R=301,L]
RewriteRule ^\.well-known/caldav /remote.php/dav/ [R=301,L]
RewriteRule ^remote/(.*) remote.php [QSA,L]
RewriteRule ^(?:build|tests|config|lib|3rdparty|templates)/.* - [R=404,L]
RewriteCond %{REQUEST_URI} !^/.well-known/acme-challenge/.*
RewriteRule ^(?:\.|autotest|occ|issue|indie|db_|console).* - [R=404,L]
ich nur eine sehr grundlegende Kenntnisse der .htaccess
Dateien haben, aber mein Verständnis ist, dass es top-down (.htaccess
in Unterverzeichnisse können die Einstellungen höher Verzeichnisse überschreiben) arbeitet außer für mod_rewrite
, was ein Sonderfall ist und umgekehrt funktioniert (das oberste Verzeichnis hat Vorrang).
Wenn mein Verständnis stimmt, warum funktioniert mein Code nicht?
Also, nach außen sollte nextcloud von seinem Unterverzeichnis serviert werden, aber die WordPress-Website sollte von der Wurzel bedient werden? Wenn ja, gibt es eine einfache Lösung. – Walf
@Walf Das ist richtig; das versuche ich zu erreichen. –