![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 2.07.2017 Ostrzeżenie: (0%) ![]() ![]() |
Skorzystalem z generatora (Mod Rewrite Generator) znajdujacego sie:
http://www.generateit.net/mod-rewrite/index.php Mam link: http://www.localhost:8080/system/panel/?s=test Chcialbym osiagnac adres: http://www.localhost:8080/system/panel/s/test Wygenerowałem cos takiego:
lecz niestety nie dziala, prosil bym o prawidlowo wygenerowany wpis do pliku htaccess na którym będę mógł się potem wzorować. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 460 Pomógł: 49 Dołączył: 5.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
.htaccess online test Ten post edytował trzczy 17.08.2017, 18:51:58 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 2.07.2017 Ostrzeżenie: (0%) ![]() ![]() |
Mógłbym prosić o wyjaśnienie jeszcze jednego:
Jeśli katalog system zmienie na np. xsystem i podmienie ten element w regule to, przestaje ona dzialac?
Ten post edytował codeszan 17.08.2017, 18:24:52 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 460 Pomógł: 49 Dołączył: 5.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 2.07.2017 Ostrzeżenie: (0%) ![]() ![]() |
problem w tym, że
a) nie przechodzi nawet przez tester ![]() |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 460 Pomógł: 49 Dołączył: 5.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
Może masz jakąś literówkę, bo tu przechodzi.
Tester |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 2.07.2017 Ostrzeżenie: (0%) ![]() ![]() |
Error 404
a może to kwestia jakiegoś http, czy www? (forma wpisywania) bo na to też są osobne reguly ponoc? ?s=test dziala poprawnie Ten post edytował codeszan 17.08.2017, 19:02:45 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 460 Pomógł: 49 Dołączył: 5.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
Tobie chyba chodzi o zamianę w odwrotną stronę. Nie A na B, tylko B na A.
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 2.07.2017 Ostrzeżenie: (0%) ![]() ![]() |
mam link
localhost:8080/system/panel/s?=test -- on dziala localhost:8080/system/panel/s/test --chce uzyskac taki efekt ? Co ciekawe taki link dziala: localhost:8080/system/panel/?s/test Ten post edytował codeszan 17.08.2017, 20:36:23 |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 460 Pomógł: 49 Dołączył: 5.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
Co to znaczy "mam link" oraz "uzyskać efekt"?
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 2.07.2017 Ostrzeżenie: (0%) ![]() ![]() |
Nie zbyt wiem jak to jeszcze bardziej sprecyzować ale postram się. Po kolei. Mam zainstalowany serwer lokalny - XAMPP. Korzystajac z skypa. Musialem zmienic port na inny wybralem 8080. Programy te dzialaj na jednym porcie. Standardowy "link" dla lokalnego serwera to laczenie przez ip czyli 127.0.0.1 lub localhost. Ja wykorzystywalem powyzsza nazwe.
Czyli link uzywany w przegladarce tam gdzie wpisuje sie zazwyczaj www.wp.pl czy www.google.pl jest teraz localhost:8080. Dalej na lokalnym serwerze stowrzylem projekt o nazwie "serwer". Jest on dostepny pod linkiem localhost:8080/serwer. W swoim projekcie uzylem przekierowan GET ktore wytworzyly mi adres o którym ciagle pisze i chce zmodyfikowac na tzw. przyjazny link jak to jest np. w wordpress. Właśnie z adresu localhost:8080/serwer/panel/?s=test chce zrobic przyjazny link i to jest moj cel a efekt .. juz napisalem w poprzednim poscie. Ten post edytował codeszan 17.08.2017, 21:04:35 |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 6 378 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Trzczy pytał w jaki sposób te linki zapisujesz na stronie. Bo powinno być tak jak pisał w poprzednim poście o a i b.
Swoją drogą łatwiej było zmienić ustawienia skype niż przenosić serwer. Ten post edytował viking 17.08.2017, 21:28:13 -------------------- |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 460 Pomógł: 49 Dołączył: 5.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
Czyli w pasku adresu przeglądarki wpisujesz www.localhost:8080/system/panel/s/test i odpala plik .../system/panel/index.php i w php jest dostępna wartość $_GET['s'] wynosząca 'test'.
Powinno zadziałać pierwsze albo drugie rozwiązanie (oba przechodzą ten test online, ale nie mam pewności):
http://htaccess.mwl.be?share=d90e76ac-4957...12-2cfdd7c7afad http://htaccess.mwl.be?share=5f57bb6c-9415...67-48a08809d315 A może nawet ta linia z RewriteCond jest niepotrzebna. Ten post edytował trzczy 17.08.2017, 21:23:34 |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 2.07.2017 Ostrzeżenie: (0%) ![]() ![]() |
Cytat Czyli w pasku adresu przeglądarki wpisujesz www.localhost:8080/system/panel/s/test i odpala plik .../system/panel/index.php www.localhost:8080/system/panel/s/test i przenosi na Nie znaleziono obiektu! Nie znaleziono żądanego URL-a na tym serwerze. Jeśli wpisałeś URL-a ręcznie, sprawdź, czy się nie pomyliłeś. Cytat i odpala plik .../system/panel/index.php i w php jest dostępna wartość $_GET['s'] wynosząca 'test'. zgadza sie Cytat #wyjściowy: "http://www.localhost:8080/system/panel/s/test" #docelowy: "http://www.localhost:8080/system/panel?s=test" jeśli dobrze dozumiem to wyjsciowy to jest to co juz mam a tak nie jest mam adres http://www.localhost:8080/system/panel?s=test czyli odwrotność tego co tu jest |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 6 378 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Gdzie masz plik index.php?
-------------------- |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 2.07.2017 Ostrzeżenie: (0%) ![]() ![]() |
plik index.php mam w folderze system czyli glowny folder projektu -- odpowiada za front
oraz system/panel/index.php -- odpowada za panel regułe którą próbujemy tu utworzyc chce by dzialala w panelu plik htaccess jest w folderze system |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 6 378 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
To w system/panel wrzuć .htaccess:
Kod RewriteEngine On
RewriteRule ^s/(.*) index.php?s=$1 [NC,L] Ten post edytował viking 17.08.2017, 22:05:13 -------------------- |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 460 Pomógł: 49 Dołączył: 5.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
No to mam nadzieję, że zadziałało. Chciałem tylko dodać, że z punktu widzenia serwera oraz modułu rewrite to tu następuje zamiana adresu "system/panel/s/test" na "system/panel?s=test", czyli ten jest pierwotny albo wyjściowy: "system/panel/s/test"
|
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 61 Pomógł: 0 Dołączył: 2.07.2017 Ostrzeżenie: (0%) ![]() ![]() |
To co podał viking działa.
Po modyfikacji: localhost:8080/system/panel/index.php?s=test upraszcza do localhost:8080/system/panel/test
Pytanie: co jeśli wpiszemy 1# localhost:8080/system/panel/test/ --czyli dodatkowo kreska na koncu? 2# localhost:8080/system/panel/index.php?s=test&a=bocian -- co jesli bylby drugi parametr? 3# localhost:8080/system/panel/index.php?s=test&a=bocian&id=123 --- co jesli bedzie jeszcze ruchome id? Jak zapisać takie reguły? Wycodząc od tego samego cały czas. |
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 460 Pomógł: 49 Dołączył: 5.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
Jak zapisać takie reguły? To nie są reguły. Jeśli pytasz o regułę, to powinieneś napisać, że coś zamienia się na coś. Np. 'system.panel/s/test' zamienia się na 'system.panel?s=test' Najlepiej podać kilka przykładów zamiany. Jeśli idzie o to, jak w regexie ująć fakt, że adres kończy się lub nie kończy ukośnikiem, to można to zapisać tak
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 9.07.2025 - 04:50 |