Autor Zpráva
vasam
Profil
Zdravím,
mám webhosting u WEDOSu, kde je systém multihostingu udělán tak, že všechny domény mají stejný doc root a rozlišuje je od sebe až .htacces (pěkně je to popsáno tady i s tím .htaccess).
Standardně to funguje tak, že http://example.tld/ se pomocí RewriteRule načte z adresáře /domains/example.tld.
Řeším právě, zda je možné nějak znepřístupnit "zvenku" adresář domains, kde je uložen obsah daných domén.
Jde mi o to, web http://example.tld/ je přístupný i z adresy http://example.tld/domains/example.tld/, což by jít asi nemělo.
Je mi jasné, že by to šlo řešit až programově na úrovni třeba PHP, ale hledám nějaké elegantnější řešení pomocí .htaccess.

Díky za jakékoliv nápady!
Kajman
Profil
Možná
RewriteCond %{ENV:REDIRECT_STATUS} =""
RewriteRule ^domains [F,L]
vasam
Profil
Zkusil jsem toto
RewriteCond %{ENV:REDIRECT_STATUS}=""
RewriteRule ^domains/ - [F,L]
ale nefunguje.

Tam je problém hlavně v tom, že jakmile se aplikuje RewriteRule na to nasměrování do adresáře /domains (viz níže), tak se vyhodnocování pravidel spustí znovu už se změněným REQUEST_URI, takže já nemám jak zjistit, jestli to REQUEST_URI už původně začínalo jako /domains (URL ve stylu http://example.tld/domains/example.tld/) nebo se to /domains tam dostalo v předchozím průchodu pomocí pravidel (URL ve stylu http://example.tld/cokoliv).
Ta pravidla jinak vypadají takto:
RewriteCond %{REQUEST_URI} !^domains/
RewriteCond %{REQUEST_URI} !^/domains/
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)$
RewriteCond %{DOCUMENT_ROOT}/domains/%2 -d
RewriteRule (.*) domains/%2/$1 [DPI]
Kajman
Profil
vasam:
takže já nemám jak zjistit

K tomu je tam ten test na REDIRECT_STATUS. Pomlčku jste přidal správně. Pokud to nové pravidlo bude před těmi původními, mělo by to fungovat.

Problémem mohou být další pravidla v .htaccess, viz. zakázání přístupu k doméně
vasam
Profil
Díky, to je ono.
Jen mi trochu vadí, že je třeba upravit každý .htaccess ve všech podúrovních.
Kajman
Profil
Další variantou je změna hostingu na takový, který domény neřeší takto zběsile.
vasam
Profil
Bohužel já právě k tomuto webhostingu přechod plánuji i s dalšími doménami kvůli výrazně nižší ceně.
Ještě přemýšlím, nakolik je to pro SEO problém, že by byl web přístupný i z /domains/web adresy.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: