[Frage] Nach URL-Fehlerbeu Umstellung auf https TYPO3-Version: 4.6.0

  • D-Jay D-Jay
    T3PO
    0 x
    19 Beiträge
    0 Hilfreiche Beiträge
    13. 05. 2018, 17:48

    Ich habe folgendes Problem:
    Habe meine Webseite auf https umgestellt. Alles funktioniert soweit ganz gut, wenn ich https://www.webseite.de eingebe.
    Wenn ich aber in die Adresszeile des Browsers http://www.meine-webseite.de eingebe, werde ich auf
    https://www.webseite.de//index.php umgeleitet.

    Eigentlich sollte es so aussehen:
    https://www.webseite.de/index.html ;
    Das Problem sind die zwei Slashes sowie das PHP am Ende.

    Das htaccess sieht so aus:
    # Real URL
    RewriteEngine On
    RewriteRule ^typo3$ - [L]RewriteRule ^typo3/.*$ - [L]RewriteRule ^uploads/.*$ - [L]RewriteRule ^fileadmin/.*$ - [L]RewriteRule ^typo3conf/.*$ - [L]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-l
    RewriteRule .* /index.php

    # Erzwinge www Duplicate Content vermeiden
    RewriteCond %{HTTP_HOST} !www\.webseite\.de$
    RewriteRule ^(.*)$ http://www.webseite.de/$1 [L,R=301,QSA]

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

    Vielen Dank für eure Hilfe im Voraus!
    Grüße aus Köln


  • 1
  • pstranghoener pstrangho...
    Die Macht
    0 x
    393 Beiträge
    21 Hilfreiche Beiträge
    17. 05. 2018, 07:36

    Hey D-Jay,
    schon eine Antwort gefunden? Ich pinne deine Frage mal oben als "wichtig" mit an.

    Grüße
    Philipp

  • pstranghoener pstrangho...
    Die Macht
    0 x
    393 Beiträge
    21 Hilfreiche Beiträge
    18. 05. 2018, 07:45

    Hey D-Jay, ich hab mir nochmal Zeit genommen.

    In der allerletzten Rule zu https ist das Slash vor dem Parameter $1 meiner Meinung nach zu viel. Evtl. könnte dir auch dieser Ausdruck weiterhelfen.
    Es gibt auch noch andere Varianten auf https umzuleiten z.B.:

    RewriteCond %{HTTPS} off
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

    Best practice wäre die Dateiendungen via .htaccess zu verbergen:

    #unless directory, remove trailing slash
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)/$ /$1 [R=301,L]

    #resolve .php file for extensionless php urls
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME}\.php -f
    RewriteRule ^(.*)$ $1.php [L]

    #redirect external .php requests to extensionless url
    RewriteCond %{THE_REQUEST} ^[A-Z]+\ /([^/]+/)*[^.#?\ ]+\.php([#?][^\ ]*)?\ HTTP/
    RewriteRule ^(([^/]+/)*[^.]+)\.php /$1 [R=301,L]

    Grüße
    Philipp

  • 1