Seite 1 von 2

Weiterleitungsproblem

Verfasst: 12.11.2021 15:28
von 69bruno
Moinsen,

ich habe folgendes Problem:
Apache2 Webserver auf Debian10 mit Webmin als Konfigurationstool.

Ich habe mein Forum als virtuellen Server unter Port 443 eingerichtet. SSL-Protokoll ist aktiviert und Forum läuft. Zur Reaktivierung eines abgelaufenen SSl-Zertifikates musste ich parallel kurz mal einen virtuellen Server mit gleichen Daten unter Port 80 aktivieren. SSl-Zertifikat eingerichtet und gedacht, alles sei in Ordnung.
Nun habe ich festgestellt, dass ich das Forum auch unter http://cruiser-lounge.de aufrufen konnte. Will ich natürlich nicht. Also den Virtuellen Server unter Port 80 gelöscht und gedacht, das sei die Lösung...... falsch.....jetzt kommt die Meldung "403 forbidden". Ist ja auch ok, der virtuelle Server ist ja nicht mehr da.
Also schnell nachgelesen, wie die Weiterleitung aktiviert wird. Bei Webmin in der Konfiguration

Code: Alles auswählen

Nicht-SSL-Anfragen auf SSL umleiten?	  Ja  Nein
auf Ja gestellt.

Keine Änderung.

Also in die .htaccess eine Weiterleitung eingegeben ala:

Code: Alles auswählen

RewriteEngine on
RewriteCond %{HTTPS} = off
RewriteRule ^(.*) https://%{HTTP_HOST}/$1 [R=301,L]
Ergebnis: internal Server Error

in der error.log der Eintrag:

Code: Alles auswählen

*/var/www/html/phpBB3/.htaccess: RewriteCond: bad flag delimiters, referer: https://cruiser-lounge.de/search.php?search_id=unreadposts
* /var/www/html/phpBB3/.htaccess: RewriteCond: bad flag delimiters
*/var/www/html/phpBB3/.htaccess: RewriteCond: bad flag delimiters
*/var/www/html/phpBB3/.htaccess: RewriteCond: bad flag delimiters, referer: https://cruiser-lounge.de/
Jetzt bin ich etwas überfragt.....

Kann einer helfen ? Ich habe jetzt die Umleitung auskommentiert, nur möchte ich, dass man das Forum auch unter https: erreicht, selbst wenn man http: in die Adresszeile eingibt.

Re: Weiterleitungsproblem

Verfasst: 12.11.2021 15:48
von chris1278
Bruno versuchs mal so:

Code: Alles auswählen

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>

Re: Weiterleitungsproblem

Verfasst: 12.11.2021 16:13
von 69bruno
Damit bekomme ich einen internal Server error und diesen Eintrag im Error log: bad argument line '%{HTTPS}!=on'

Re: Weiterleitungsproblem

Verfasst: 12.11.2021 19:42
von vfrblue
Bei mir klappt es mit dieser Anweisung:

Code: Alles auswählen

RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule (.*) https://%{HTTP_HOST}/$1 [R=301,L]

Re: Weiterleitungsproblem

Verfasst: 13.11.2021 12:06
von 69bruno
Hat leider auch nicht geklappt.
Mittlerweile habe ich einen Weg gefunden, ich habe direkt in der 000-default.conf ein Redirect eingefügt und mit a2ensite aktiviert.

Code: Alles auswählen

Redirect / https://cruiser-lounge.de/
Funktioniert tadellos und kann für jeden virtuellen host separat eingestellt werden.

Aber trotzdem merkwürdig, dass die Einträge in der .htaccess auf Fehler laufen, besonders, weil das ja schon mal funktioniert hatte.....

Re: Weiterleitungsproblem

Verfasst: 13.11.2021 20:19
von IMC
Du solltest die Umleitung noch als Permanent kennzeichnen.

Code: Alles auswählen

Redirect 301 / https://cruiser-lounge.de/code]

Re: Weiterleitungsproblem

Verfasst: 14.11.2021 11:52
von 69bruno
Danke für den Hinweis, ergänzt.

Re: Weiterleitungsproblem

Verfasst: 19.11.2021 11:03
von 69bruno
Also hierauf muss ich mal zurückkommen.

Ich habe da ein hartnäckiges Problem mit dem mod_rewrite.
Bei Kontrolle, ob der Mod aktiviert ist kommt das:

Code: Alles auswählen

a2enmod rewrite
Module rewrite already enabled
Meine .htaccess im phpBB3 Verzeichnis sieht bezüglich mod_rewrite eingedampft auf Befehlszeilen so aus:

Code: Alles auswählen

<IfModule mod_rewrite.c>

RewriteCond %{SERVER_PORT}!^443$
RewriteRule (.*) https://%{HTTP_HOST}$1 [R=301,L]
#
RewriteBase /phpBB/
#
#RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ app.php [QSA,L]
#
#Options +FollowSymLinks
</IfModule>
Meine Ergänzungen in der .conf - Datei, die permanent http auf https umleitet, habe ich erst mal wieder auskommentiert:

Code: Alles auswählen

<VirtualHost cruiser-lounge.de:80>
    DocumentRoot "/var/www/html/phpBB3"
    ServerName cruiser-lounge.de
    #Redirect 301 / https://cruiser-lounge.de/
    <FilesMatch \.php$>
             SetHandler "proxy:unix:/var/run/php/php7.3-fpm.sock|fcgi://localhost"
    </FilesMatch>
    ErrorLog /error.log
    CustomLog /access.log combined
    <Directory "/var/www/html/phpBB3">
        Options None
        Require all granted
    </Directory>
</VirtualHost>
Was passiert:
Nicht-SSL-Anfragen werden nach SSL umgeleitet. Soweit, so gut, steht ja auch in der .htaccess so drin.
URL's werden ohne "/app.php/" verarbeitet, die Seiten aber nicht gefunden.

Also habe ich getestet was passiert, wenn ich die http to https Umleitung in der .htaccess auch auskommentiere und in Webmin in der SSL-Konfiguration ebenfalls deaktiviere.
Ergebnis, http-Anfragen werden immer noch auf https umgeleitet. Die rewriteRule für die app.php bleibt außer Funktion.

Hat jemand einen Geheimtipp, wo es eine ausführliche Beschreibung zu Umleitungen mit rewrite gibt ?

Re: Weiterleitungsproblem

Verfasst: 19.11.2021 11:14
von chris1278
Das hier

URL's werden ohne "/app.php/" verarbeitet, die Seiten aber nicht gefunden.

Sollte auch ohne htaccess funktionieren. Wenn du nicht willlst das in der Adresszeile app.php steht dann aktiviere doch im ACP unter

ACP/Server-konfiguration/server domain bei der einstellung "Umschreiben von URL´s aktivieren" auf aktiv.

Dann wird: h**ps://meinedomain.de/app.php/irgdendwas zu h**ps://meinedomain.de/irgdendwas

Re: Weiterleitungsproblem

Verfasst: 19.11.2021 11:46
von 69bruno
Die Einstellung im ACP muss aber vom Server "verarbeitet werden können".

Ich habe den Fehler selbst gefunden. Ich hatte andauernd versucht, die Direktive "AllowOverride" in der zentralen *.conf-Datei einzustellen.
Ich hätte aber die *.conf-Datei des virtuellen Host nehmen müssen. Darin wurde die Direktive nämlich wieder deaktiviert.

Vorne "ja" hinten "nein", das geht nicht gut.
Vorne "nein" hinten "ja", das geht.

erinnert mich an das Rechtesystem in phpBB3 :lol: