Autor | Zpráva | ||
---|---|---|---|
Juandev Profil |
#1 · Zasláno: 28. 12. 2011, 19:00:28
Není mi jasné, čím (nebo jakou částí mod_rewrite) je docíleno, že alias určité domény pozná, který má zobrazit adresář? Předpokládám, že informace je ukrytá v následujícím kódu. Také předpokládám, že to funguje jen tehdy když
neco v /domains/neco = name.cz
RewriteEngine On # 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] |
||
Davex Profil |
#2 · Zasláno: 28. 12. 2011, 20:09:02
Pro domény je to zajištěno tímto:
# vezme se celé jméno serveru (ze začátku se zahodí www.) a předá se do proměnné %2 RewriteCond %{HTTP_HOST} ^(www\.)?(.*)$ # je v adresáři domains/ podadresář se jménem z proměnné %2? RewriteCond %{DOCUMENT_ROOT}/domains/%2 -d # pokud ano, tak se adresa na něj přepíše RewriteRule (.*) domains/%2/$1 [DPI] Juandev: „Také předpokládám, že to funguje jen tehdy když neco v /domains/neco = name.cz“ První pravidlo přesouvá různé domény do podadresáře domains/: example.com -> domains/example.com/ w>ww.example.com -> domains/example.com/ subdomena.example.com -> domains/subdomena.example.com Druhé pravidlo přesouvá subdomény do podadresáře subdom/: subdomena.example.com -> subdom/subdomena/ w>ww.subdomena.example.com -> subdom/subdomena/ jina.example.com -> subdom/jina/ |
||
Juandev Profil |
#3 · Zasláno: 28. 12. 2011, 20:57:20
Davex:
Jo tak díky. Musím konstatovat, že je to jak Mendlovi zákony - to znamená, že věřím že to funguje a v tomdle případě jsem i rád, že to funguje. To mi k životu stačí. Teď vidím, že jsem si tam vložil jeden zbytečný mezikrok a sice, že jsem alias přesměroval na adresář. Což se tady samo děje díky výše uvedenému pravidlu |
||
Časová prodleva: 12 let
|
0