http zu https redirect-Fehler auf Wordpress-Seite?
Ich habe eine Wordpress-Website, nennen wir sie example.com, die von IONOS gehostet wird. Es handelt sich um eine HTTPS-Website mit einem funktionierenden SSL-Zertifikat, sodass alle HTTP-Anfragen auf die angeforderte Seite umgeleitet werden sollten, aber dabei das HTTP durch HTTPS ersetzt wird.
Beispiel: http://example.com sollte auf https://example.com umgeleitet werden (das funktioniert). http://example.com/subpage sollte auf https://example.com/subpage umgeleitet werden (das funktioniert jedoch nicht!). Stattdessen passiert Folgendes: http://example.com/subpage leitet auf https://example.com/ um.
Das Hauptproblem dabei ist, dass die Google Search Console fälschlicherweise einen Umleitungsfehler für jede Unterseite erkennt, die sie zu indexieren versucht, obwohl die Indexanfrage speziell für die HTTPS-Seite (https://example.com/subpage) gesendet wurde.
Ich verwende die neueste Version von Wordpress. Die derzeit installierten Plugins sind:
- Advanced Import
- Duplicate Page
- Elementor Pro
- IONOS Assistant (deaktiviert)
- IONOS Help (deaktiviert)
- IONOS Journey (deaktiviert)
- IONOS Login
- IONOS Loop (deaktiviert)
- IONOS Navigation
- IONOS Performance
- IONOS Security
- Music Player for Elementor
- Title Remover
- WPvivid Backup Plugin
- Yoast SEO Premium
Diese Teile meiner .htaccess-Datei könnten für das Problem verantwortlich sein:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(/(.*))?$ https://%{HTTP_HOST}/$1 [R=301,L]
</IfModule>
und/oder:
<IfModule mod_rewrite.c>
# ENGINE ON
RewriteEngine on
# set hostname directory
RewriteCond %{HTTPS} on
RewriteRule .* - [E=IONOS_PERFORMANCE_HOST:https-%{HTTP_HOST}]
RewriteCond %{HTTPS} off
RewriteRule .* - [E=IONOS_PERFORMANCE_HOST:%{HTTP_HOST}]
# set subdirectory
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_METHOD} GET
RewriteCond %{REQUEST_URI} !(.*)/$
RewriteCond %{REQUEST_FILENAME} !.(gif|jpg|png|jpeg|css|xml|txt|js|php|scss|webp|mp3|avi|wav|mp4|mov)$ [NC]
RewriteRule .* - [E=IONOS_PERFORMANCE_DIR:%{REQUEST_URI}/]
RewriteCond %{REQUEST_URI} /$
RewriteRule .* - [E=IONOS_PERFORMANCE_DIR:%{REQUEST_URI}]
RewriteCond %{REQUEST_URI} ^$
RewriteRule .* - [E=IONOS_PERFORMANCE_DIR:/]
# gzip
RewriteRule .* - [E=IONOS_PERFORMANCE_SUFFIX:]
<IfModule mod_mime.c>
RewriteCond %{HTTP:Accept-Encoding} gzip
RewriteRule .* - [E=IONOS_PERFORMANCE_SUFFIX:.gz]
AddType text/html .gz
AddEncoding gzip .gz
</IfModule>
# Main Rules
RewriteCond %{HTTP_ACCEPT} .*text/html.*
RewriteCond %{ENV:INITIAL_REQUEST_METHOD} ^$
RewriteCond %{ENV:REDIRECT_INITIAL_REQUEST_METHOD} ^$
RewriteCond %{QUERY_STRING} ^$
RewriteCond %{REQUEST_URI} !^/(wp-admin|wp-content/cache)/.*
RewriteCond %{HTTP_COOKIE} !(wp-postpass|wordpress_logged_in|comment_author)_
RewriteCond /homepages/9/d4297862886/htdocs/./wordpress/wp-content/cache/ionos-performance/%{ENV:IONOS_PERFORMANCE_HOST}%{ENV:IONOS_PERFORMANCE_DIR}index.html%{ENV:IONOS_PERFORMANCE_SUFFIX} -f
RewriteRule ^(.*) /wp-content/cache/ionos-performance/%{ENV:IONOS_PERFORMANCE_HOST}%{ENV:IONOS_PERFORMANCE_DIR}index.html%{ENV:IONOS_PERFORMANCE_SUFFIX} [L]
</IfModule>
und/oder:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
Meine Permalink-Einstellung in Wordpress ist wie folgt:
https://example.com/%category/%postname%/
2 Antworten
Das Problem liegt scheinbar in der RewriteRule-Anweisung oder daran, dass ganz schön viele rewrite-Anweisungen angegeben sind. Das ist mehr als bei einem "normalen" WordPress. Eventuell überlagern sich hier einige Regeln, weshalb es nicht so funktioniert wie es soll.
Du könntest testhalber den ersten Abschitt mal damit ersetzen:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>
Der Fehler liegt sehr wahrscheinlich in der htaccess. Benenne diese einmal um. Daraufhin sollte WordPress eine neue, saubere htaccess erstellen oder Google danach, was standardmäßig dort drin steht. Dies ist nämlich deutlich weniger.
Ich finde die von Ionos erstellte WordPress-Installationen nicht gut. Ist meiner Meinung nach zuviel Bloatware. Lieber selber installieren und eine möglichst schlanke Seite haben.