wir haben einen Shop erstellt, der über verschiedene Browser über http:// und http:// erreichbar ist, d.h. die Umleitung in der htaccess zu https funktioniert nicht richtig.
Hier der Inhalt meiner Datei:
`AddHandler php-fastcgi7.4 .php .phtml
BEGIN Shopware
The directives (lines) between „# BEGIN Shopware“ and „# END Shopware“ are dynamically generated. Any changes to the directives between these markers will be overwritten.
DirectoryIndex index.php
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$
RewriteRule ^(.*) - [E=BASE:%1]
# Sets the HTTP_AUTHORIZATION header removed by Apache
RewriteCond %{HTTP:Authorization} .
RewriteRule ^ - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^index\.php(?:/(.*)|$) %{ENV:BASE}/$1 [R=301,L]
# If the requested filename exists, simply serve it.
# We only want to let Apache serve files and not directories.
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]
# Rewrite all other queries to the front controller.
RewriteRule ^ %{ENV:BASE}/index.php [L]
<IfModule !mod_rewrite.c>
RedirectMatch 302 ^/$ /index.php/
Header set Content-Security-Policy "script-src 'none'"
Redirect /de/schilder/beschilderung-wanderwege https://www.schilder-werbetechnik.de/schilder/beschilderung-wanderwege/
END Shopware`
Ich bekomme leider die Umleitung nicht richtig hin und hoffe, dass mir hier jemand helfen kann. In einem anderen Forum habe ich folgenden Code gefunden:
Danke für deine Hilfe. Ich habe es so gemacht, wie im Beitrag beschrieben, leider ohne Änderung. Bei mir im Chrome und Safari sieht es gut aus, im Firefox leider nicht. Hier nochmal der Inhalt meiner .htaccess
DirectoryIndex index.php
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$
RewriteRule ^(.*) - [E=BASE:%1]
# Sets the HTTP_AUTHORIZATION header removed by Apache
RewriteCond %{HTTP:Authorization} .
RewriteRule ^ - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^index\.php(?:/(.*)|$) %{ENV:BASE}/$1 [R=301,L]
# If the requested filename exists, simply serve it.
# We only want to let Apache serve files and not directories.
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ - [L]
# Rewrite all other queries to the front controller.
RewriteRule ^ %{ENV:BASE}/index.php [L]
# Rewrite all other queries to the front controller.
RewriteRule ^ %{ENV:BASE}/index.php [L]
fängt alles ab, daher kann es „danach“ gar nicht funktionieren.
Wenn Chrome was macht, tippe ich eher auf Browser-Cache. 301 von ohne www auf mit www cached der nämlich.
So eine Regel gehört ganz an den Anfang.
Force-SSL würde ich eh eher beim Hoster in den Verwaltungstools einschalten.