Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [inny][Yii] Problem ze ścieżkami do zagnieżdżonych aplikacji
Forum PHP.pl > Forum > PHP > Frameworki
adbacz
Potrzebuję zagnieżdzić dwie aplikacje napisane w Yii w trzeciej, tak, by używały tego samego folderu framework:
domain.com/ - Strona główna
domain.com/service/ - Pierwsza podstrona
domain.com/admin/ - Druga podstrona

Aplikacje oddzielnie działają prawidłowo, problem zaczynam mieć gdy włożę "service" i "admin" do głównego folderu strony głównej. Wszystkie requesty kierowane są zawsze na plik index.php w stronie głównej, nawet po wejściu na adres domain.com/service/. Mam wyłączone pokazywanie index.php w adresie URL z poziomu HTACCESS i nie mogę sobie poradzić, by napisać regułkę, która by sprawiła, że zaczęłoby to wszystko działać. Aktualny plik HTACCESS wygląda następująco:
Kod
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)\?*$ index.php/$1 [L,QSA]

Czy mógłby mnie ktoś nakierować albo podpowiedzieć co mogę zrobić, by to zaczęło działać tak jakbym tego chciał?
pedro84
W aplikacjach zagnieżdżonych ustaw RewriteBase /path/.
adbacz
Rozumiem, wiem co ma to za zadanie. Tylko problem w tym, że HTACCESS na Stronie głównej kieruje każdy Request na index.php Strony głównej - w tym miejscu jest problem. Requesty nie dochodzą do tych dróch pozostałych podstron.

Jak napisać treść HTACCESS by Requesty z początkiem url /admin, kierował do takiego katalogu, z początkiem /service do odpowiedniego mu, a całą resztę do index.php w Stronie głównej?
pedro84
Ah, fakt. Sorry, jakiś średnio myślący dziś jestem.

Nie mam Apacza pod ręką, ale
Kod
RewriteCond %{REQUEST_FILENAME} !-d powinno właśnie
RewriteCond %{REQUEST_FILENAME} !-f

nie powinno dotykać w ogóle requestów do istniejących plików/katalogów. Masz oba katalogi w katalogu głównym podstawowej apki?

Ewentualnie, możesz spróbować przed RewriteRule umieścić coś takiego:
Kod
RewriteRule ^service - [L,NC]
RewriteRule ^admin - [L,NC]

spowoduje to, że requestów idących do URLi zaczynających się od danego stringa nie będzie dotykać:
Cytat
- nie rób nic
L ostatnia reguła
NC ignoruj wielkość znaków


Ale jak mówię, o ile jeszcze dziś jestem w stanie logicznie myśleć, to Twój config powinien działać.
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.