Nun hat es dann doch ein paar Tage mehr gebraucht..., sorry.
Du hast sehr wahrscheinlich ein mehrschichtiges Problem! Siehe oben. Denn das beschriebene Problem mit der serendipity.js besteht immer noch.
Einerseit lebt Serendipity in einem Unterverzeichnis von /www, deinem eigentlichen Webroot;
Anderseits gibt es irgendwo eine Regel, die dein Webroot um dies Verzeichnis "/blog" verschiebt, so dass das Blog unter ost-impuls.de/ von Außen erreichbar ist.
Das ist das eine. Wie das genau in der VirtualHost des Apachen (wahrscheinlich) konfiguriert ist, kann dir nur dein Hoster beantworten.
Oder hast du selbst den Pfad in der Serendipity Konfiguration unter "URL zum Blog" auf "/blog" gesetzt?
Das andere ist, das eigentlich ein korrekt aufgesetzter 443 VirtualHost Eintrag ohne weitere Manipulation der Serendipity .htaccess mit SSL (https) generell für die Site funktionieren müsste.
Vorausgesetzt, man hat die folgenden Serendipity Konfigurationseinstellungen gewählt:
Unter Pfade, die Option "URL zum Blog" mit https, also
https://www.ost-impuls.de und unter der Option "HTTP-Hostnamen automatisch erkennen" JA ausgewählt. (Wahrscheinlich ginge es auch mit "Nein".)
Deine .htaccess Datei ist per Hand manipuliert. Wie du selber schreibst per:
Code: Select all
6 RewriteEngine On
7 RewriteCond %{HTTP_HOST} !^www\.ost-impuls\.de [NC]
8 RewriteRule ^(.*)$ https://www.ost-impuls.de/$1 [R=301,L]
9 RewriteCond %{HTTPS} off
10 RewriteRule ^(.*)$ https://www.ost-impuls.de/$1 [R=301,L]
11
12 RewriteBase /
...
Was du aber unterschlägst, ist, dass du die Zeilen 2, 3 und 4
Code: Select all
1 # BEGIN s9y
2 #ErrorDocument 404 /index.php
3 #DirectoryIndex /index.php
4 #Options -MultiViews
5
auskommentiert hast. Stimmts?
Das sind aber letztlich "lebens"wichtige Einstellungen für Serendipity, wenigstens in der Einstellung 'mod_rewrite'!
Nicht immer kann man sich bei Konfigurationenveränderungen gerade mit den Apache *.conf Dateien auf seinen Browser verlassen, der mitunter sehr sehr anhänglich ist, wenn es um veränderte Protokolle und/oder akzeptierte Zertifikate geht. Wenn man sich also auf einen Konfigurations TEST Marathon einlässt, muss man dies Wissen, damit man keine falschen Schlüsse zieht.
Wie genau du nun verfahren musst, um diese Probleme zu lösen ist nicht ganz einfach. Besser wäre es bestimmt Serendipity komplett im Web Root zu betreiben, wenn man es dort auch anspricht.
Und das ist auch das allererste Problem das es zu lösen gilt. Hast du hier eine Unverträglichkeit, besonders was die Serendipity Umwandlungen für "/" betrifft, kann auch alles weitere nicht richtig arbeiten.
Mein genereller Vorschlag, um das Backend secured, das Frontend aber durchaus (auch) auf Port :80 laufen zu lassen:
Apache Direktiven, um deine Website normal und secured zu benutzen (sind natürlich nur Beispiel):
In der /etc/apache2/ports.conf:
Code: Select all
NameVirtualHost *:80
Listen 80
<IfModule mod_ssl.c>
NameVirtualHost *:443
Listen 443
</IfModule>
<IfModule mod_gnutls.c>
NameVirtualHost *:443
Listen 443
</IfModule>
In der /etc/apache2/sites-available/mysite.conf:
Code: Select all
<VirtualHost *:80>
ServerAdmin name@gmail.com
ServerName mysite.com
ServerAlias http://www.mysite.com
DocumentRoot /srv/www/mysite.com/public_html/
ErrorLog /srv/www/mysite.com/logs/error.log
CustomLog /srv/www/mysite.com/logs/access.log combined
</VirtualHost>
<VirtualHost *:443>
SSLEngine On
SSLCertificateFile /etc/apache2/ssl/mysite.com.crt
ServerAdmin name@gmail.com
ServerName mysite.com
ServerAlias http://www.mysite.com
DocumentRoot /srv/www/mysite.com/public_html/
ErrorLog /srv/www/mysite.com/logs/error.log
CustomLog /srv/www/mysite.com/logs/access.log combined
#Hier weitere SSL Direktiven wie Cipher etc
</VirtualHost>
Dann in der Serendipity Konfiguration unter "Pfade", die Option "URL zum Blog" ohne https, also
http://www.ost-impuls.de und unter der Option "HTTP-Hostnamen automatisch erkennen" JA auswählen.
Nun kannst du in den Optionen des superuser (sidebar) plugins, dass im core bereits installiert ist, per Option die Umwandlung auf das "https" Protokoll bestimmen. Wenn das eventuell nicht geht, gibt es auch noch folgende Möglichkeit:
Addiere zur .htaccess (wenn in normal rewrite modus) diese drei Regeln:
Code: Select all
RewriteCond %{SERVER_PORT} 80
RewriteCond %{REQUEST_URI} /serendipity_admin.php
RewriteRule ^(.*)$ https://www.ost-impuls.de/$1 [R,L]
Also zb:
Code: Select all
# BEGIN s9y
ErrorDocument 404 /index.php
DirectoryIndex /index.php
php_value session.use_trans_sid 0
php_value register_globals off
Options -MultiViews
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteCond %{REQUEST_URI} /serendipity_admin.php
RewriteRule ^(.*)$ https://www.ost-impuls.de/$1 [R,L]
RewriteBase /
...und alles folgende...
(Diese drei Regeln kann man bestimmt auch noch "updatesicher" umformulieren und sie an den Anfang der HTaccess schreiben.)
Außerdem ist zu beachten:
Wenn dein Theme eventuell einen Home Navigations Button hat, der auf "/" verweist und nicht automatisch das richtige Protokoll findet, ändere ihn auf "/index" oder "/home".
Sonst weiß dein Web im Falle des Falles nicht, welches Protokoll es verwenden soll und entscheidet sich für das später konfigurierte, was wir hier im Frontend nicht wollen, denn hier soll ja alles (laut Vorschlag auch) unsecured erreichbar sein. Aber das muss man ausprobieren!
Ansonsten, wenn man seine gesamte Site auf "https" laufen lassen will, sollte die VirtualHost 443 Direktive alleine mit ein paar S9y Optionen schon ausreichen - ohne die htaccess zu manipulieren.
Generell wirst du auch noch deine index.tpl auf hartkodierte "http://" Protokolle durchsuchen müssen und sie entweder auf "//" reduzieren oder auf "https://" umstellen müssen, je nachdem, ob du (wie erwähnt) auf beiden Ports lauschen willst oder nicht.
Das gleiche gilt zb auch für die Pfad Optionen des freetag plugins und zwar in beiden Ausführungen (sidebar und event)!!
Erst wenn dir dein Browser in der Schlüsselanzeige der Adresszeile meldet, dass du eine durchweg verschlüsselte Site (mit einem geschlossenen Schloss!) hast, ist alles in Ordnung.
Viel Spaß beim Tüfteln!