Skocz do zawartości

Przekierowanie podstron


cukier

Rekomendowane odpowiedzi

Pytanie pewnie banalne,

na forum powtarzane, ale żaden sposób nie działa :/ Żadna magia, żadne czary :/ Proszę o pomoc, bo jestem za skraju wytrzymałości z cholernym htaccess.

Potrzebuje zrobić przekierowania podstron serwisu ze zmienną:

https://strona.pl/cgi-bin/test.pl?id=1

https://strona.pl/cgi-bin/test.pl?id=2

https://strona.pl/cgi-bin/test.pl?id=3

na

https://strona.pl/art-1.html

https://strona.pl/art-2.html

https://strona.pl/art-3.html

powtórzę, ze przewertowałem tematy, ale żaden ze sposobów nie zarybił :/ Jedyny "sukces" jaki osiągnąłem to błąd 404, dzięki takiemu przekierowaniu:

RewriteCond %{REQUEST_URI} (.*)/test.pl

RewriteCond %{QUERY_STRING} id=1

RewriteRule ^.*$ strona.pl/art-1.html [R=301]

inne sposoby, nie przekierowywały bądź prowadziły do: strona zawiera pętle przekierowań. Proszę o pomoc.

Odnośnik do komentarza
Udostępnij na innych stronach

w koncu się udało, podam zapis, jakby ktos kiedys potrzebował. Smakuje to jeszcze lepiej, ponieważ na jednym super forum programistycznym, uporczywie ktos sie upierał, ze po prostu się nie da tego zrobic w sposób tak, jak ja chce

Przyjazne linkowanie polega na tym, że użytkownik klikając w link nr 2 NIE jest nigdzie przekierowywany - i po prostu pokazuje mu się treść taka sama jakby otworzył link #1, ALE adres w przeglądarce się nie zmienia. Dodatkowo, żeby przekierować tak - musimy w linku źródłowym mieć wszystkie parametry, które chcemy przekazać do adresu docelowego.

Czyli np mamy https://strona.pl/pare_literek-IDTESTU.html i robimy uzytek z IDTESTU czyli wyswietlamy strone https://strona.pl/cgi-bin/test2.pl?id=IDTESTU

Trzeba zwrócić uwagę, że pare_literek może być dowolnym tekstem w tym przypadku, więc wiele linków otworzy tą samą stronę, np:

https://strona.pl/pare_literek-69.html

https://strona.pl/dupa_jasia-69.html

https://strona.pl/test-z-matmy-69.html

wszystkie te linki otwórzyłyby test 69.

Mam nadzieję, że jakoś się zrozumiemy..

rozwiązanie:

RewriteCond %{REQUEST_URI} cgi-bin/test2.pl$

RewriteCond %{QUERY_STRING} ^id=26$

RewriteRule ^.*$ https://strona.pl/nazwa-testu.html? [L]

RewriteRule nazwa-testu.html cgi-bin/test2.pl?id=26?

Odnośnik do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę. Warunki użytkowania Polityka prywatności