Nunja, du versuchst damit aktuell die Seite https://www.bogensehnen-shop.de/agb auf sich selbst umzuleiten, was in einer Schleife endet.
Deshalb der Fehler mit den “Too many redirects”.
leitest du alle URLs (egal welche Domain) mit dem Pfad /agb auf die genannte URL.
Diese trifft ja aber wieder auf den Redirect und wird wieder auf sich selbst weitergeleitet usw.
Da steht ja man soll alle URLs in der htaccess umleiten lassen…oder verstehe ich das falsch?
Eine Umleitung von OHNE www zur mit WWW habe ich schon eingerichtet. Normalerweise dürfte doch jetzt mit dem Wegfall des Mischbetriebes automatisch jede Seite mit https angesprochen werden - sofern SSL aktiv ist?!
Shopware selbst wird mit 5.4 alle internen Links die zu Deinen AGB zeigen mit https:// erzeugen, es könnte aber natürlich sein dass es noch irgendwelche externen Links (zB. bei Google) gibt die auf die alte URL mit http:// zeigen, diese müssen auf https umgelenkt werden.
Nun soll es so sein, dass wenn diese Urls angeklickt werden, automatisch auf https umgeleitet wird, richtig?
Ich bin jetzt des englischen nicht 100pro mächtig, aber soviel wie ich von deinem Link hsoebbing verstehe sollte der Lösungsansatz der hier sein:
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^ https://example.com%{REQUEST_URI} [R=301,L,NE]
Ich weiss ja nicht ob ich der einzige bin, aber dafür dass man bei einem Update auf 5.4 sein SEO Ranking verlieren kann finde ich den Guide-Artikel doch recht karg zu diesem Thema. Es geht ja hier scheinbar um tausende von Euros die flöten gehen können.
Ich habe gleiche Lösung bei einem anderen Kunden versucht. Update auf 5.4.1 gemacht und hier das hier in die .htaccess gelegt.
RewriteEngine on
#RewriteBase /shopware/
# Https config for the backend
#RewriteCond %{HTTPS} !=on
#RewriteRule backend/(.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteRule shopware.dll shopware.php
RewriteRule files/documents/.* engine [NC,L]
RewriteRule backend/media/(.*) media/$1 [NC,L]
RewriteCond %{REQUEST_URI} !(\/(engine|files|templates|themes|web)\/)
RewriteCond %{REQUEST_URI} !(\/media\/(archive|banner|image|music|pdf|unknown|video)\/)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ shopware.php [PT,L,QSA]
# Fix missing authorization-header on fast_cgi installations
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
RewriteEngine on
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^ https://schaefer-sport.de%{REQUEST_URI} [R=301,L,NE]
# Block access to VCS directories
RedirectMatch 404 /\\.(svn|git|hg|bzr|cvs)(/|$)
# Restrict access to root folder files
RedirectMatch 404 /(composer\.(json|lock)|README\.md|UPGRADE\.md)$
# Staging environment
#SetEnvIf Host "staging.test.shopware.in" SHOPWARE_ENV=staging
# Development environment
#SetEnvIf Host "dev.shopware.in" SHOPWARE_ENV=dev
#SetEnv SHOPWARE_ENV dev
DirectoryIndex index.html
DirectoryIndex index.php
DirectoryIndex shopware.php
# Disables download of configuration
# Deny all requests from Apache 2.4+.
Require all denied
# Deny all requests from Apache 2.0-2.2.
Deny from all
# Enable gzip compression
AddOutputFilterByType DEFLATE text/html text/xml text/plain text/css text/javascript application/javascript application/json
ExpiresActive on
ExpiresDefault "access plus 1 month"
Header append Cache-Control "public"
Header unset ETag
FileETag None
# Match generated files like:
# 1429684458_t22_s1.css
# 1429684458_t22_s1.js
Header set Cache-Control "max-age=31536000, public"
ExpiresActive on
ExpiresDefault "access plus 1 year"
# Disables auto directory index
Options -Indexes
Options -MultiViews
# php_value memory_limit 256M
# php_value max_execution_time 120
# php_value upload_max_filesize 20M
php_flag phar.readonly off
php_flag magic_quotes_gpc off
php_flag session.auto_start off
php_flag suhosin.session.cryptua off
php_flag zend.ze1_compatibility_mode off
# AddType x-mapp-php5 .php
# AddHandler x-mapp-php5 .php
Header append X-Frame-Options SAMEORIGIN
Leider scheint es hier nicht zu funktionieren - ich verstehe jedoch wieso nicht. Wenn ich von einem Google Ergebnis ohne https weitergeleitet werden möchte, lädt die Seite trotzdem ohne das https://, siehe:
Es ist auch vollkommen sinnfrei mitten in der htaccess-Datei „RewriteEngine on“ zu setzen, wenn dies schon am Anfang der htaccess steht. Apache hat ausführliche Dokumentationen über die Bearbeitungsreihenfolge von Anweisungen in htaccess-Dateien veröffentlicht, schau dir diese einmal an.
Der Redirect von http auf https muss als erstes in der htaccess stehen und wenn man kann, dann sollte dies schon direkt in der httpd-Datei bei den vHost-Konfigurationen erfolgen.