htaccess und kein www
-
24-09-2019 - |
Frage
Ich versuche, meine ganze Seite nicht-www
zu umleitenHier ist der .htaccess-Code Ich bin mit
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
# no www
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.akorra\.com$ [NC]
RewriteRule ^.*$ http://akorra.com%{REQUEST_URI} [R=301,L]
irgendwelche Ideen
Lösung
Ich denke, Ihre Regeln müssen zwischen dem Modul Tags.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# no www
RewriteCond %{HTTP_HOST} ^www\.akorra\.com$ [NC]
RewriteRule ^.*$ http://akorra.com%{REQUEST_URI} [R=301,L]
# BEGIN WordPress
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
</IfModule>
Andere Tipps
Hier ist, was Sie in der .htaccess hinzufügen müssen
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.example.com$ [NC]
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]
Wenn Sie jedoch mit Wordpress als Motor arbeiten, mit der die gesamten Website, sondern nur die Permalink-Struktur aktualisieren und alle internen Einstellungen mit Ihren Domain-Namen in den www zu entfernen.
EDIT:
Ich dachte, dass anders war, als ich die Antwort geschrieben Tut mir Leid. Versuchen Sie, Ihre nicht www Regel nach oben zu bewegen ...
# no www
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.akorra\.com$ [NC]
RewriteRule ^.*$ http://akorra.com%{REQUEST_URI} [R=301s,L]
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
AGAIN im Auge behalten, wenn Wordpress zu produzieren Verbindungen mit einem www
gesetzt ist, dann wird nichts sie stoppen zurückkehrt alles wieder ein www sogar mit einer richtigen Rewrite-Regel zu haben.
Weitere Details Wordpress:
Überprüfen Sie die Einstellungen in wp/wp-admin/options-general.php
...
- Seien Sie sicher, dass die
www
inWordPress address (URL)
entfernen - Seien Sie sicher, dass die
www
inBlog address (URL)
entfernen
und dann premalink Struktur in wp-admin/options-permalink.php
aktualisieren, damit die Änderungen widerspiegeln.
Nach allem, was gesagt und getan ist, sollten Sie Wordpress hat nicht überschreiben neuen Code in Ihrer .htaccess
Datei.
Hallo, ich glaube, Sie müssen Ihr Skript anpassen, wie für das Umschreiben zur Arbeit folgt:
Options +FollowSymlinks
RewriteEngine on
Ich glaube, dass die Folge Symlinks unbedingt einbezogen werden muss, für url richtig an der Arbeit neu zu schreiben.
Weitere Ratschläge zum mod_rewrite hier:
http://www.askapache.com/htaccess/mod_rewrite -Tipps-and-tricks.html
Rob
RewriteEngine On
RewriteBase /
# no www
RewriteCond %{HTTP_HOST} ^([^.]+)\.akorra\.com$ [NC]
RewriteRule ^(.*)$ http://akorra.com/$1 [R=301,L]
# WordPres
RewriteCond %{REQUEST_URI} ^/[^\.]+[^/]$
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
Das sollte funktionieren
Ich schlage vor, dieses Stück Code zu verwenden, für www von Ihrer Website zu entfernen:
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]
es ist mehr generisch.
und in Ihrem Beispiel ist es am besten, diese zu verwenden:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# no www
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
RewriteRule ^ http://%1%{REQUEST_URI} [R=301,L]
# BEGIN WordPress
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress
</IfModule>