Autor | Zpráva | ||
---|---|---|---|
Rob Profil |
#1 · Zasláno: 28. 2. 2006, 15:26:31
Zdravím, na domény třetího řádu mi doporčili nahrát do rootu takovýhle .htaccess:
RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} subdomena.xxx.xx RewriteCond %{REQUEST_URI} !slozka1/ RewriteRule ^(.*)$ slozka1/$1 [L] Není to úplně to ideální, ale pro můj případ to bylo nejlepší. Teď to tedy testuju a má to jeden háček. Dělá to to, že subdomena.domena.xx je domena.xx/subdomena. To je jasné a to funguje. Ale když jsem jako adresu napsal subdomena.domena.xx/adresar, tak mě to přesměrovalo na subdomena.domena.xx/subdomena/adresar. To je poněkud nepříjemné. Nešlo by se s tím nějak vypořádat?? Myslím změnou toho zápisu. Chtěl bych použít totiž mod_rewrite i na adresy (předávání proměnné) a obávám se, že by to dělalo to samé. Bohužel mod_rewrite mi pořád ještě nějak nedocvaknul, takže se obracím s radou na ostatní. |
||
pmasarik Profil |
#2 · Zasláno: 28. 2. 2006, 16:25:09
Neviem či som to pochopil správne takže možno to bude hovadina, ale máš na stránke použité absolútne adresy?
To znamená že všade musia byť linky v tvare /nieco.php alebo /nieco/nieco/nieco.html index proste musí byť len / nie ./ alebo len index.php Snáď ti to pomôže ak nie tak nič :-) |
||
Rob Profil |
#3 · Zasláno: 28. 2. 2006, 16:40:19
HM, tak tohle jsem asi nepochopil, ale zkusím to vysvětlit lépe.
Když se používá mod_rewrite k odstranění dynamické adresy, tak se to dělá takhle: www.neco.cz/clanek-15 se serveru předá jako www.neco.cz/clanky.php?idclanku=15 no a já bych potřeboval vlastně něco podobného. potřebuji, aby se to co se napíše jako subdomena.neco.cz/blabla.htm chovalo jako www.neco.cz/subdomena/blabla.htm ono se to tak skoro chová, ale když napíšu subdomena.neco.cz/adresar, tak se mi to přesměruje na subdomena.neco.cz/subdomena/adresar teoreticky by to jít mělo, protože když předávám třeba to id (horní příklad), tak mě to tam taky nepřesměruje, ale nechá mi to tu adresu. No a tady mě to pak přesměruje. Já potřebuju, aby mi to nechalo subdomena.neco.cz a pak to to za lomítkem vyhodnotilo, ale ne přesměrovalo. Určitě to jít musí, ale já se v mod_rewrite nevyznám. |
||
Rob Profil |
#4 · Zasláno: 28. 2. 2006, 16:48:01
Teď jsem zkoušel subdomena.neco.cz/soubor.htm
to jde, takže to zlobí jenom když se děje něco s adresářem. |
||
Kajman_ Profil * |
#5 · Zasláno: 28. 2. 2006, 16:51:04
Tuším, že se v rewrite v druhém parametru uvádí soubor a ne adresář.
|
||
Rob Profil |
#6 · Zasláno: 28. 2. 2006, 17:00:58 · Upravil/a: Rob
Tak to teda nevím, ale já potřebuju tomu serveru říct tohle:
------------------------------------- S subdomena.blabla.cz/adresar PRACUJ JAKO S www . blabla.cz/subdomena/adresar ------------------------------------- Ale on to nebere jako s.... pracuj jako s..... ale on to nějak přesměrovává. |
||
Kajman_ Profil * |
#7 · Zasláno: 28. 2. 2006, 20:55:23
A máte tam přesně ty pravidla, co jste posílal? Bez adresy serveru?
Přiznám se, že na podstrčení adresáře (aby to vypsalo takový ten seznam od apache) jsem kdysi (když jsem mod_rewrite testoval) nepřišel. Tak jestli na to přijdete, dejte prosím vědět :-) |
||
Rob Profil |
#8 · Zasláno: 28. 2. 2006, 21:47:21
Kajman_
A máte tam přesně ty pravidla, co jste posílal? Bez adresy serveru? Nerozumím. Jaká pravidla? Přišel jsem na další zajímavou věc. A jsem z toho dost zmatený. Když směruji pouze na adresář, subdomena.neco.cz/adresar, tak to přepíše na subdomena.neco.cz/subdomena/adresar, to zůstalo. Ale když to nasměruji i se jménem indexu subdomena.neco.cz/adresar/index.htm, tak to zůstane takhle. Tak si teda nejsem nějak jist, co si o tom mám myslet. A taky jsem si všimnul další věci. Mám nastavené chybové hlášky přes .htaccess. No a když dojde k události (např. 403) v adrese s tou subdoménou (subdomena.neco.cz/adresar_bez_indexu_na_403ku), tak mi to nehodí moji 403, ale tu defaultní serverovou. To je mi divné, protože chybové hlášky jsou nastaveny v root adresáři, takže by to fungovat mělo, ale to že to nefunguje zase naznačuje to, že se to chová jako samostatná subdoména. Co si o tom myslíte vy?? Jsem blázen nebo se to tak má chovat?? |
||
Kajman_ Profil * |
#9 · Zasláno: 28. 2. 2006, 22:44:20
Nerozumím. Jaká pravidla?
Rewrite pravidla. tak mi to nehodí moji 403 Asi se přepíše i chybová stránka 403. Takže ji nachystat i pro subdoménu nebo ošetřit, aby se tahle stránka nepřepisovala. |
||
Kajman_ Profil * |
#10 · Zasláno: 28. 2. 2006, 22:54:27
zkusil bych zkontrolovat, zda je vyplněné lomítko u adresářů a dyžtak ho doplnit
RewriteEngine On RewriteBase / #pokud neni subdomena preskoc dve pravidla rewriterule RewriteCond %{HTTP_HOST} !subdomena.xxx.xx RewriteRule .* - [S=2] #jinak delej pro subdomenu.. prvne dopln lomitko u adresare bez lomitka RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^(.*[^/])$ $1/ [L] RewriteCond %{REQUEST_URI} !slozka1/ RewriteRule ^(.*)$ slozka1/$1 [L,QSA] Nebo tak nějak, nemám chuť to zkoušet. |
||
Kajman_ Profil * |
#11 · Zasláno: 28. 2. 2006, 22:56:13
Oprava :-)
RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} !subdomena.xxx.xx RewriteRule .* - [S=2] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^(.*[^/])$ slozka1/$1/ [L] RewriteCond %{REQUEST_URI} !slozka1/ RewriteRule ^(.*)$ slozka1/$1 [L,QSA] |
||
Rob Profil |
#12 · Zasláno: 1. 3. 2006, 10:36:50
Tak jsem to vyzkoušel. Pro jistotu nejdříve na WZ. Když se to napíše bez lomítka, tak se to chová stejně. Když se to dá s lomítkem, tak to funguje (lomítko myslím na konci). To mě před tím nenapadlo vyzkoušet, ale funguje to tak i s tím starým. Tím je problém částečně vyřešen, ale pokud by někoho ještě něco napadlo, tak budu jen rád.
Asi se přepíše i chybová stránka 403. Takže ji nachystat i pro subdoménu nebo ošetřit, aby se tahle stránka nepřepisovala. Jak na to?? Prosím. |
||
Rob Profil |
#13 · Zasláno: 1. 3. 2006, 10:46:56
To s tím ošetřením bych rád věděl proto, že tam asi bude mít stránky jeden kámoš a nerad bych mu držel nůž u krku, že tam ten soubor musí mít.
|
||
Kajman_ Profil * |
#14 · Zasláno: 1. 3. 2006, 16:29:04
RewriteRule ^(404|403)\.html$ - [L]
ukončí přepisování pro soubory 403.html a 404.html |
||
Rob Profil |
#15 · Zasláno: 1. 3. 2006, 17:12:02
hm, to mi nějak blbnulo, ale udělal jsem to jinak:
ErrorDocument 404 http://www.................404.html apod. |
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0