Umleitung nach https klappt nicht
Linuchs
- https
Moin,
ich dachte, wir hätten dieses Problem diskutiert, finde es aber nicht wieder. Vielleicht verborgen in einem Faden.
Wenn ich dieses in die Adresszeile vom FF eingebe:
Wird wie gewünscht die Seite https://remso.eu/index.php ausgeliefert. Zugehörige .htaccess bei remso.de und remso.org gleich:
ErrorDocument 404 /error_404.php
Redirect 301 / https://remso.eu/
Wenn ich dieses eingebe:
kommt bei dieser .htaccess (bei remso.eu) ...
ErrorDocument 404 /error_404.php
# 2020-08-05 remso.eu/.htaccess https://www.sslmarket.de/ssl/help-von-http-zu-https/
#RewriteEngine On
#RewriteCond %{HTTPS} off
#RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
# 2020-08-05 remso.eu/.htaccess https://www.ionos.de/hilfe/ssl-zertifikate/tipps-zur-einrichtung-und-nutzung/https-ssl-fuer-website-erzwingen/
#RewriteEngine On
#RewriteCond %{SERVER_PORT} !=443
#RewriteRule ^(.*)$ https://remso.eu/$1 [R=301,L]
# 2020-08-05 remso.eu/.htaccess https://wiki.selfhtml.org/wiki/Webserver/htaccess/Umleitungen_mit_mod_rewrite#Umleitung_von_http_auf_https
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule (.*) https://%{HTTP_HOST}/$1 [R=301,L]
... die Meldung
„Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator at [no address given] to inform them of the time this error occurred, and the actions you performed just before this error.
More information about this error may be available in the server error log. Apache/2.4.25 (Debian) Server at remso.eu Port 80“
Keine Ahnung, was die Maschine mir mitteilen möchte.
Wo finde ich error log?
Unter Filezille sehe ich ein leeres Log-Verzeichnis:
Gruß, Linuchs
Lieber Linuchs,
das hier sieht völlig richtig aus:
# 2020-08-05 remso.eu/.htaccess https://wiki.selfhtml.org/wiki/Webserver/htaccess/Umleitungen_mit_mod_rewrite#Umleitung_von_http_auf_https RewriteEngine On RewriteCond %{SERVER_PORT} !^443$ RewriteRule (.*) https://%{HTTP_HOST}/$1 [R=301,L]
Was für einen Sinn hat eigentlich diese Zeile?
Redirect 301 / https://remso.eu/
Willst Du die Subdomain www
unterdrücken?
Wenn ich dieses eingebe:
- remso.eu
- www.remso.eu
kommt bei dieser .htaccess (bei remso.eu) ...
[htaccess-Code]
... die Meldung
„Internal Server Error
Meinst Du mit "eingebe" in der Adresszeile des Browsers? In Deinem Code steht das ja nirgends. Also gehe ich davon aus, dass Du die Subdomain unterdrücken willst. Ich vermute, dass Dein Redirect falsch ist, da er nach meiner Auffassung unendlich oft umleitet. Um Dein Ziel zu erreichen, verwende doch das hier:
RewriteCond %{SERVER_NAME} ^www\. [OR]
RewriteCond %{SERVER_NAME} ^(www\.)?remso\.de [OR]
RewriteCond %{SERVER_NAME} ^(www\.)?remso\.org
RewriteRule .* https://remso.eu%{REQUEST_URI} [R,QSA]
Vielleicht hilft es gegen den 500er...
Liebe Grüße
Felix Riesterer
Hallo Felix,
Was für einen Sinn hat eigentlich diese Zeile?
Redirect 301 / https://remso.eu/
Im .htaccess bei remso.de und remso.org leitet sie zu remso.eu - das klappt ja auch.
Also gehe ich davon aus, dass Du die Subdomain unterdrücken willst.
Ich habe nie verstanden, was die Subdomain www bezweckt. Wenn alle Domains denselben Vornamen haben, ist der doch redundant.
Bei einer Fehlermeldung wg. falschem Zertifikat lese ich, dass https für remso.eu und www.remso.eu gilt. Ich hatte es mit https://remso.de in der Adresszeile des Browsers versucht. Diese Eingabe wird nicht nach remso.eu umgeleitet.
Habe deine vier Zeilen in die .htaccess bei remso.eu geschrieben: „Internal Server Error”, auch wenn ich „RewriteEngine On“ voranstelle.
Die drei .htaccess (für de, eu und org) habe ich per FTP hochgeladen. Ich kann auf den Server als root zugreifen, vielleicht macht es Sinn, an einer anderen Schraube zu drehen. Aber Ahnung habe ich keine.
Habe mich vollkommen im Gestrüpp der Ratschläge festgefahren und die .htaccess bei eu wieder gelöscht. Wenn ich nun remso.eu eingebe, ergänzt offenbar der Browser zu http://remso.eu und ich bekomme eine unsichere Seite.
Ich möchte doch nur, dass https bei eu kommt, wenn http gerufen wird. Ist das so schwer?
Kommt mir vor wie eine Lotterie, aber nur Nieten. Auch dieses „Los“ ist eine Niete.
Gruß, Linuchs
Habe hier was gelesen:
„Sie müssen dabei auf dem Server das Modul mod_rewrite aktivieren, was aber bei meisten Webhostern kein Problem darstellt.“
Wie geht das?
Lieber Linuchs,
„Sie müssen dabei auf dem Server das Modul mod_rewrite aktivieren, was aber bei meisten Webhostern kein Problem darstellt.“
aha! Wenn in der .htaccess auf etwas zugegriffen werden soll, das nicht verfügbar ist, dann führt das selbstverständlich zu einem Fehler, in diesem Fall einem 500er.
Wie geht das?
$ a2enmod rewrite
Das Dollarzeichen soll Dir zeigen, dass Du dafür auf einer Shell sein musst. Wenn der Shell-Benutzer nicht root ist, dann kann dieser Code an fehlender Berechtigung scheitern. Eventuell hilft es dann, sudo
an den Anfang zu schreiben, damit der Code mit root-Rechten ausgeführt wird. Probiere es aber zuerst ohne sudo
!
Liebe Grüße
Felix Riesterer
Lieber Felix,
ahaa ...
Server meldet: Enabling module rewrite. To activate the new configuration, you need to run: systemctl restart apache2
Kann ich das aus der Ferne machen oder gibt es da wieder Dornengestrüpp und Fallgruben?
Na, Mut zum Risiko, zur Not muss es der Fachmann in Frankfurt richten ...
Oh Wunder, kaum macht man's richtig, schon funktioniert's.
Dein Tipp war der richtige Zauberspruch. Danke.
Linuchs
Hallo Linuchs,
zeig mal bitte die komplette VirtHost-Definition.
LG
localhost
Hallo localhost,
VirtHost-Definition
Hab erstmal geguckt, wat dat is.
Hier was gefunden und ich soll dies eingeben: /usr/local/apache2/bin/httpd -S
Meldung: -bash: /usr/local/apache2/bin/httpd: Datei oder Verzeichnis nicht gefunden
Weist du, als Webmeister bin ich sowas wie ein Fremdenführer im Web, webe Verknüpfungen und bringe meine Besucher dorthin, wohin sie möchten.
Aber wie das Getriebe in meinem Webstuhl (Server) funktioniert, habe ich keine Ahnung. Und Reparieren kann ich schon gar nicht.
Linuchs
Lieber Linuchs,
Aber wie das Getriebe in meinem Webstuhl (Server) funktioniert, habe ich keine Ahnung. Und Reparieren kann ich schon gar nicht.
dann solltest Du Dir Deine Server-Administration von einem Fachmann erledigen lassen! Alles andere ist grob fahrlässig!!
Liebe Grüße
Felix Riesterer
Lieber Felix,
dann solltest Du Dir Deine Server-Administration von einem Fachmann erledigen lassen!
Habe ich ja auch. Aber diese Umleitung erschien so einfach wie ein Fingerschnipp. Und der „Fachmann“ schreibt Rechnungen.
Also leite ich mein Problem an den weiter ...
Gruß, Linuchs
Tach!
„Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.
Please contact the server administrator at [no address given] to inform them of the time this error occurred, and the actions you performed just before this error.
More information about this error may be available in the server error log. Apache/2.4.25 (Debian) Server at remso.eu Port 80“
Keine Ahnung, was die Maschine mir mitteilen möchte.
In dieser Meldung möchte sie dir ganz bewusst nichts genaues mitteilen. 500er Fehlermeldungen würden interne Details preisgeben, wenn sie auf die Ursache hinweisen würden. Deswegen steht diese nur im Logfile.
Wo finde ich error log?
Das ist in der Konfiguration des Webservers geregelt. Das kann dir kein Außenstehender sagen. Es ist global im Apachen geregelt, kann aber auch per VHost überschrieben werden. Die Direktive dazu heißt ErrorLog.
dedlfix.