Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [solved] Przekierowanie domeny na cms
Forum PHP.pl > Forum > PHP
DiH
Witam,

Na hostingu mam postawioną stronę na cmsie, mniejsza o to jakim. Strona, na nim oparta znajduje się pod lokalizacją strona.com/cms/index.php. Plik index.php jest częścią tego cmsa. Obecnie, aby przeglądać stronę, musiałem zrobić zwykle przekierowanie z strona.com/index.php na strona.com/cms/index.php. Nie trzeba mówić jak paskudnie to wygląda.

Wiem, że powinienem użyć do tego mod_rewrite, czego zresztą próbowalem, tyle że sam cms tworzy linki w stylu: strona.com/cms/index.php?page=alias i napisanie zwykłej reguly, takiej jak poniższa nie działa. Jak się do tego zabrać?
Kod
#RewriteRule ^index\.php$ cms/


EDIT
A jednak! Da się. Mam nadzieję, że komuś innemu też się to przyda. Straciłem na to 5 godzin, ale warto było. Info jak to zrobić znalazłem tutaj: http://forum.cmsmadesimple.org/index.php/topic,41251.0.html
Quadina
CMS będzie brał ściężkę gdzie się znajduje index.php. Spróbuj może napisać w folderze głównym mały pliczek index.php typu:
  1. include('cms/index.php');

I sprawdź czy zadziała poprawnie. Ogólnie to raczej trudno przekierować w taki sposób ruch, aby skrypt CMS wiedział, że to taki szacher macher i się do tego ustosunkował bez ingerencję w jego kod.
DiH
Otóż da się na pewno, moja wiedza nie jest po prostu w tym temacie wystarczająca. Includowanie w żaden sposób tutaj niestety nie zadziała.
Quadina
Spróbuj użyć po prostu:
Kod
RewriteEngine on
RewriteBase /cms/

DiH
Nie, nie działa.

Odświeżam w nadziei, że ktoś jednak zna rozwiązanie. Chodzi o to by po kliknięciu w dowolny link spod strona.com/cms/index.php?page=1 adres zmieniał się zawsze automatycznie na strona/index.php?page=1. W tej chwili jedyne co się dzieje, to po wejściu na stronę faktycznie ukrywa to cms/, jednakże po kliknięciu w dowolny link w adresie folder ten jest widoczny.
Quadina
Pisałem Ci już, że bez ingerencji w Twój CMS jest to raczej mało prawdopodobne. Skrypt zawsze będzie widział, że jest w folderze mimo jakiegokolwiek ustawienia w .htaccess, jeżeli nie zareagował na BaseRewrite, to znaczy, że jest inteligentniejszy niż myślimy i takie sztuczki z nim niestety nie wyjdą. Póki co wszystkie osoby jakie znam, które próbowały to wykonać, albo zadowalał BaseRewrite, albo kopiowały wszystko do roota, ewentualnie zmieniały DocumentRoot w apachu.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.