![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 319 Pomógł: 4 Dołączył: 7.02.2009 Skąd: pless Ostrzeżenie: (0%) ![]() ![]() |
Cześć,
Jak za pomocą Mod_rewrite zrobić że jeśli ktoś wywoła stronę używając do tego np. takiego adresu http://moja_strona.pl/coś/index.php?id=1 i tam gdzie jest to coś to mogło by być cokolwiek innego bez dodawania kolejnej reguły do htaccess, ale tak żeby to działało tylko do plików np. php, inc, fnc. Pliki były by w głównym katalogu i to do nich by odnosiło a odpowiedni skrypt w PHP przeparsował by url i jeśli istnieje zawartość dla wirtualnego katalogu "coś" to by ją wyświetliło. Ten post edytował patryk9200 15.09.2009, 21:53:48 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Cytat a na jakiej zasadzie to działa? bo nie może przekierowywać, a czy tablice POST i GET też przekazuje? znalazłem wiele routerów w PHP ale żaden nie odpowiada moim wymaganiom To znaczy? Nie zapętlaj się, opisz szczegółowo te wymagania. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 319 Pomógł: 4 Dołączył: 7.02.2009 Skąd: pless Ostrzeżenie: (0%) ![]() ![]() |
To znaczy? Nie zapętlaj się, opisz szczegółowo te wymagania. sorry, że tak puźno odpowiadam ale mnie w kraju nie było;-) Jeśli chodzi o wymagania to muszę zrobić coś takiego, że chcę dać możliwość tworzenia własnych stron wykorzystując tylko 1 system CMS prze zemnie pisany który pozwalał by wyświetlić zawartość zależną od wirtualnego katalogu użytego do wejścia na stronę. Czyli mam np. kilku użytkowników którzy zakładają sobie strony dodając dane o ich konfiguracji do bazy. Powiedzmy, ze mam użytkowników a,b,c i teraz chcę aby każdy mógł wejść na swoją stronę używając takiego adresu: http://mojastrona.pl/a/, http://mojastrona.pl/b/, http://mojastrona.pl/c/, tylko, że te dane nie mogą być zapisywane w htaccess. Identyfikacja strony polegała by na sprawdzeniu czy strona o podanym adresie istnieje i jeśli tak wyswietli tą stronę, jeśli nie to wyświetli stronę błędu. Chodzi mi tylko o stworzenie routera który przekazywał by dane przesłane z dowolnego wirtualnego adresu do głównego CMS'a z tym, że musiałby uwzględniać również wywołane skrypty tzn. jeśli bym miał np. http://mojastrona.pl/a/user.php?id=1 to żeby zadziałało jak wywołanie po prostu http://mojastrona.pl/user.php?id=1. ujmę to jeszcze jaśniej.... chodzi mi o przekierowanie zapytania do głównego katalogu a nie do wirtualnych użytych w adresie. jak zrobić dyrektywę w htaccess która zrobi coś takiego: RewriteEngine on RewriteRule ^$zmienna1/$zmienna2?$ $zmienna2 [L] tzn. pobierze adres, wirtualny katalog to $zmienna1, zapytanie to $zmienna2 i jak zrobić żeby do zapytanie kierowała do głównego katalogu a nie wirtualnego? $zmienna1 będzie zbudowana tylko z liter i cyfr natomiast $zmienna2 z tego wszystkiego co mogą mieć w sobie dane przesyłane metodą GET. jeszcze mi wpadło, że może w htaccess da się odcinać ścieżki katalogów? i może można by było to kierować do głównego? zrobiłem coś takiego: RewriteRule ^(.*)$ http://zs4.tychy.edu.pl/new/%{REQUEST_FILE...%{QUERY_STRING} [L] i gdy wpiszę np.http://zs4.tychy.edu.pl/new/w/test.php?wp=r to przekierowuje mnie pod taki adres: http://zs4.tychy.edu.pl/new//home/zs4tychy/ftp/new/home?wp=r jak zrobić żeby adres końcowy wyglądał tak: http://zs4.tychy.edu.pl/new/test.php?wp=r o coś takiego mi chodzi tylko nie wiem jak zrobić żeby to nie było w formie przekierowania, żeby adres pozostawał pierwotny... dobra już sobie poradziłem z tym. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 13.10.2025 - 11:01 |