Aldomain rewrite
Sziasztok!
Olyan problémát kellene megoldanom, hogy valami.domain.hu oldalra egy domain.hu/index.php?page=valami¶m=barmi oldal töltődjön be, de ne úgy, hogy átugjon rá, hanem az adott aldomainen maradjon.
Jelenleg úgy működik, hogy átugrik, ami nem jó. A rendszergazda szerint jól megírt átirányítási szabállyal lehetne megcsinálni, mert ő csak ennyit tud tenni.
Tudtok nekem segíteni?
Előre is köszi a válaszokat
■ Olyan problémát kellene megoldanom, hogy valami.domain.hu oldalra egy domain.hu/index.php?page=valami¶m=barmi oldal töltődjön be, de ne úgy, hogy átugjon rá, hanem az adott aldomainen maradjon.
Jelenleg úgy működik, hogy átugrik, ami nem jó. A rendszergazda szerint jól megírt átirányítási szabállyal lehetne megcsinálni, mert ő csak ennyit tud tenni.
Tudtok nekem segíteni?
Előre is köszi a válaszokat
PHP?
1. megoldás: PHP.
Az aldomain index.php-jából be-require-olod a fődomain index.phpját. Persze, a linkeket is megfelelően igazítani kellene.
2. megoldás:
mod_rewrite, mint a rövid webcímeknél ( http://www.weblabor.hu/cikkek/rovidwebcim ). Ez esetben is igazítani kell a linkeket.
<Nincs cím>
Az 1. megoldás nem jó nekem, mert az aldomaineknek nincs külön tárhelyük, így index fájlt sem tudok elhelyezni.
Ezzel szemben a 2. megoldás jónak tűnik. Már használtam rewrite rule-okat, csak aldomainek esetében nem tudom, hogy hogyan működik. Tudnál nekem ebben segíteni? Illetve mit értesz azon, hogya linkeket is igazítani kellene.
Előre is köszi.
2. megoldás...
Azt tudod csinálni, hogy beállítod azt, hogy az aldomainek és a domainek mind az index.php-ra mutassanak, a cikkben ismertetett módszerrel ráirányítasz minden kérést, majd a HTTP_HOST headert és a $_GET['URL']-t lekérdezve eldöntöd, hogy milyen tartalmat szolgálsz ki. A HTTP_HOST headert a kliens küldi, tehát szerepel benne, hogy melyik aldomaint szeretné.
Javaslom, hogy a mod_rewrite dokumentációját nézegesd át, hogy hogy kell rewrite-okat csinálni. A .htaccess fájl a barátod (feltéve, hogy Apache van).
ue. kellett megoldanom
RewriteBase /
RewriteCond %{HTTP_HOST} ide.jön.az.aldomain.domainnév.com
RewriteCond %{REQUEST_URI} !/ide.jön.a.mappa.neve/
RewriteRule ^(.*)$ ide.jön.a.mappa.neve/$1 [L]
Megkésett válasz
Nagyon hálásan köszönöm a segítségeteket. Sajnos, csak most jutottam el odáig, hogy megint tudok vele foglalkozni.
Üdv,
Moncsibe
valami még mindig nem jó :(
Tudom, hogy rég írtam ezzel a problémával kapcsolatban, de sajna, csak most volt időm vele foglalkozni. Cadeyrn által írt kódot elhelyeztem a .htaccess fájlba, de csak fél sikert értem el. ha beirom, hogy aldomain.domain.hu, akkor már nem ugrik át a domain.hu/index.php?param1=ertek1 oldalra, hanem ott marad az aldomain.domain.hu oldalon, de valami miatt nem fut bele a rewriterule-ba és ezért egy általános redirect-et vesz figyelembe, és emiatt teljesen más tartalom jön be az oldalra.
Én így írtam meg a kódot:
RewriteCond %{HTTP_HOST} aldomain.domain.hu
RewriteCond %{REQUEST_URI} !/domain.hu/index.php?param1=ertek1/
RewriteRule ^(.*)$ domain.hu/index.php?param1=ertek1/$1 [L]
Mi lehet a gond? Talán nem kell a második RewriteCond-hoz és a RewirteRule-hoz a domain.hu? Vagy a végükre nem kell a '/' jel, és a $1?
A szerver úgy van felépítve, hogy mivel több honlapot is kiszolgál, ezért minden honlap (domain) külön mappában van, és a mappa elnevezése megegyezik a domain névvel (pl. domain.hu). Ez az oldal smarty-ban lett megcsinálva, s maga az index.php a domain.hu/html/ mappában található.
Ha esetleg szükséges még valamit megadnom, szóljatok, csak kérlek segítsetek !!!
ui. Az általános redirect a virtual.conf-ba van
Előre is köszi a válaszokat, és bocs, ha nagyon alapnak tűnök, igyekszem fejlődni, de valahol el kell kezdeni...
valami még mindig nem jó :(
Tudom, hogy rég írtam ezzel a problémával kapcsolatban, de sajna, csak most volt időm vele foglalkozni. Cadeyrn által írt kódot elhelyeztem a .htaccess fájlba, de csak fél sikert értem el. ha beirom, hogy aldomain.domain.hu, akkor már nem ugrik át a domain.hu/index.php?param1=ertek1 oldalra, hanem ott marad az aldomain.domain.hu oldalon, de valami miatt nem fut bele a rewriterule-ba és ezért egy általános redirect-et vesz figyelembe, és emiatt teljesen más tartalom jön be az oldalra.
Én így írtam meg a kódot:
RewriteCond %{HTTP_HOST} aldomain.domain.hu
RewriteCond %{REQUEST_URI} !/domain.hu/index.php?param1=ertek1/
RewriteRule ^(.*)$ domain.hu/index.php?param1=ertek1/$1 [L]
Mi lehet a gond? Talán nem kell a második RewriteCond-hoz és a RewirteRule-hoz a domain.hu? Vagy a végükre nem kell a '/' jel, és a $1?
A szerver úgy van felépítve, hogy mivel több honlapot is kiszolgál, ezért minden honlap (domain) külön mappában van, és a mappa elnevezése megegyezik a domain névvel (pl. domain.hu). Ez az oldal smarty-ban lett megcsinálva, s maga az index.php a domain.hu/html/ mappában található.
Ha esetleg szükséges még valamit megadnom, szóljatok, csak kérlek segítsetek !!!
ui. Az általános redirect a virtual.conf-ba van
Előre is köszi a válaszokat, és bocs, ha nagyon alapnak tűnök, igyekszem fejlődni, de valahol el kell kezdeni...