![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 657 Pomógł: 2 Dołączył: 15.08.2003 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Szybko i konkretnie:
Takie URLe mają być przerzucone do index.php http://site.com/ http://site.com/module/ http://site.com/module/action/ http://site.com/module/action/param1/param2/ http://site.com/module http://site.com/module/action http://site.com/module/action/param1/param2 *jednak jeśli katalog taki istnieje, rewrite ma przerwac dzialanie Takie mają nie być obsłużone przez rewrite http://site.com/costam.txt http://site.com/skrypt.php?costam=a http://site.com/a/b/?x=y Potem w skrypcie odpowiednio to przerobię poprzez SERVER[PATH]. Bardzo tego potrzebuję. Przejrzałem archiwa forum i innych, znalazłem masę rozwiązań ale żadne do końca nie jest tym na czym mi zależy. W jednej z technik (chmola) wypisywał on kolejne katalogi które mają nie być brane pod uwagę. Mi takie rozwiązanie nie pasuje :/ Próbowałem sam... ale noga jestem w wyrażeniach perla i rewrite. Bardzo serdecznie proszę osoby mogące pomóc o jej udzielenie (pomocy). Pozdrawiam, wesołych świąt. -------------------- |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 246 Pomógł: 0 Dołączył: 28.09.2004 Ostrzeżenie: (0%) ![]() ![]() |
Nie wiem czy o to Ci chodzi ale mozesz sprobowac tak:
plik .htaccess Cytat RewriteEngine On RewriteBase / RewriteRule ^([a-zA-Z0-9_]+)/$ index.php?param1=$1 [L] RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)$ index.php?param1=$1¶m2=$2 [L] Nastepnie w pliku index.php mozesz odczytywac zmienne (param1 i param2) jako zmienne $_GET['']. I tu coś takiego:
Nie wiem czy to rozwiąże Twój problem... opisz dokładniej co chcesz zrobic. Pozdrawiam dex. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 657 Pomógł: 2 Dołączył: 15.08.2003 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
po prostu chce zrobić NiceURLe ale nie wykorzystując do tego mod_rewrite tak jak to ma miejsce zazwyczaj (czyt. w htaccess zapisujemy wszelkie możliwe regułki i odpowiedniki). Nie chce także stosować ForceType opisanego w artykule na php.pl.
Chce każde odniesienie do _nieistniejącego_ pliku/katalogu przekazać plikowi index.php gdzie ten przy pomocy php i danych z $_SERVER postanowi co robimy dalej :] -------------------- |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 246 Pomógł: 0 Dołączył: 28.09.2004 Ostrzeżenie: (0%) ![]() ![]() |
Chyba sie nie da zrobic NiceURL bez ForceType lub mod_rewrite.
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 657 Pomógł: 2 Dołączył: 15.08.2003 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
"Chyba sie nie da zrobic NiceURL bez ForceType lub mod_rewrite."
Nie powiedziałem, że _bez_ mod_rewrite. Przecież nawet w temacie jest napisane, że chcę z niego skorzystać! Tylko o ile standardowo przez "zastosuj mod_rewrite" rozumie się przykładowo taki zapis w .htaccess: Kod RewriteEngine On RewriteBase / RewriteRule ^index.html$ /index.php RewriteRule ^forum.html$ /index.php?page=forum RewriteRule ^forum([0-9]*).html$ /index.php?page=forum&what=view_forum&f=$1 RewriteRule ^topic([0-9]*).html$ /index.php?page=forum&what=view_topic&t=$1 RewriteRule ^newsy.html$ /index.php?page=news RewriteRule ^newsy([0-9]*).html$ /index.php?page=news&p=$1 RewriteRule ^news([0-9]*).html$ /index.php?page=news&what=view&id=$1 To mnie zależy na max. 2/3 regułach RewriteRule/RewriteCond które pozwolą przekazać wszystkie requesty do index.php Z POMINICIEM tych requestów które "zapytują" o istniejące dane (pliki/katalogi) -------------------- |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 853 Pomógł: 25 Dołączył: 27.08.2003 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
zaraz po RewiteCond On umiesc:
Kod RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d -f jest od plikow, -d od katalogow -------------------- "If debugging is the process of removing bugs, then programming must be the process of putting them in..."
sobstel.org |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 657 Pomógł: 2 Dołączył: 15.08.2003 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
sopel: kochany jesteś ;* Wreszcie działa.
Co do tych -f -d to wiedziałem że będzie coś z tym, ale nie mogłem zaczaić jak tego użyć. W manualu mod_rewrite nie podali żadnego przykładu (po prostu nie dawałem tego %REQUEST-FILENAME) -------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 6.07.2025 - 23:35 |