Topic-icon .htaccess www a bez www přesměrování

  • CMS systémy (cmssystemy)
  • Avatar uživatele CMS systémy (cmssystemy) Autor tématu
  • Offline
  • Administrator
  • Administrator
  • Všechny redakční systémy na jednom místě
Více
02. kvě 2013 21:41 - 02. kvě 2013 22:30 #70 od CMS systémy (cmssystemy)
.htaccess www a bez www přesměrování vytvořil uživatel CMS systémy (cmssystemy)
Chcete přesměrovat vaše adresy s www na adresy bez www nebo naopak přidejte následující kód do souboru .htaccess dle Vaší potřeby.

1.) Přesměrování pro domény

# presmerovani bez www na verzi s www
RewriteCond %{HTTP_HOST} !^www\.(.*)
RewriteRule (.*) http://www.%{HTTP_HOST}/$1 [R=301,L]
# presmerovani s www na bez www
RewriteCond %{HTTP_HOST} ^www\.(.*)
RewriteRule (.*) http://%1/$1 [R=301,L]

2.) Přesměrování pro subdomény

# presmerovani s www na bez www
RewriteCond %{HTTP_HOST} ^www\.([^.]+)\.example\.com [NC]
RewriteRule ^(.*)$ http://%1.example.com/$1 [R=301,L]
Poslední změna: 02. kvě 2013 22:30 uživatelem CMS systémy (cmssystemy).

Prosím Přihlásit se nebo Vytvořit účet připojte se ke konverzaci.

  • CMS systémy (cmssystemy)
  • Avatar uživatele CMS systémy (cmssystemy) Autor tématu
  • Offline
  • Administrator
  • Administrator
  • Všechny redakční systémy na jednom místě
Více
05. kvě 2013 19:59 - 05. kvě 2013 20:09 #71 od CMS systémy (cmssystemy)
Odpověděl CMS systémy (cmssystemy) pro téma .htaccess www a bez www přesměrování
Soubor .htaccess, který používám pro hosting WEDOS. Toto řešení funguje tak, že všechny domény a aliasy bez www přepíše www a všechny subdomény jsou bez www.

Domény a subdomény pak vypadají takto:
www.mojedomena.cz (domény)
www.mojedomenajakoalias.cz (aliasy)
subdomena.domena.cz (subdomény)

V tomto řešení jsou použity proměnné takže nemusíte soubor .htaccess přepisovat a bez problému jej můžete používat pro všechny weby u WEDOSu.

RewriteEngine On

# presmerovani na variantu s www cele domeny (aliasy)
RewriteCond %{HTTP_HOST} ^([^\.]*)\.([^\.]*)$
RewriteRule (.*) http://www.%1.%2/$1 [L,R=301]
  
# presmerovani na variantu bez www subdomeny
RewriteCond %{HTTP_HOST} ^www\.([^.]+)\.([^.]+)\.([^\.]*)$ [NC]
RewriteRule ^(.*)$ http://%1.%2.%3/$1 [L,R=301]

# cele domeny (aliasy)
RewriteCond %{REQUEST_URI} !^domains/
RewriteCond %{REQUEST_URI} !^/domains/
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)$
RewriteCond %{DOCUMENT_ROOT}/domains/%2 -d
RewriteRule (.*) domains/%2/$1 [DPI]

# subdomeny (s nebo bez www na zacatku)
RewriteCond %{REQUEST_URI} !^subdom/
RewriteCond %{REQUEST_URI} !^/subdom/
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)\.([^\.]*)\.([^\.]*)$
RewriteCond %{DOCUMENT_ROOT}/subdom/%2 -d
RewriteRule (.*) subdom/%2/$1 [DPI]

# aliasy - spravne presmerovani pri chybejicim /
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^domains/[^/]+/(.+[^/])$ /$1/ [R]

# subdomeny - spravne presmerovani pri chybejicim /
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^subdom/[^/]+/(.+[^/])$ /$1/ [R]
Poslední změna: 05. kvě 2013 20:09 uživatelem CMS systémy (cmssystemy).

Prosím Přihlásit se nebo Vytvořit účet připojte se ke konverzaci.

Přihlášení