Skocz do zawartości
Zaloguj się, aby obserwować  
fifty123

Przekierowanie htaccess starych linków

Polecane posty

Witam. Mam problem. Używam skryptu TenTego 2, wcześniej TT1. Linki do obrazków w TT1 miały postać: adres.pl:/obrazek.php?998

Po aktualizacji do TT2, linki mają teraz postać adres.pl:/obrazek/998/

 

Jak zrobić przekierowanie ze starych linków na te nowe? Ciągle mi wyskakuje 404 po wejściu przez stary link, a chciałbym, żeby zmieniało mi automatycznie na nowy.

 

W htaccess próbowałem użyć takiej komendy: Redirect 301 /obrazek\.php\?(\d+) /obrazek/$1

 

Niestety nie działa. Może mi ktoś pomóc?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

mod_alias (czyli użycie Redirect lub RedirectMatch) nie daje Ci możliwości zabawy z QUERY_STRING (czyli tym co po znaku zapytania).

Musisz wesprzeć się mod_rewrite, czyli będzie to np. coś takiego:

 

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI}  ^/obrazek\.php$
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^(.*)$ http://example.com/obrazek/%1/ [R=301,L]

 

Zakładam, że nowa wersja skryptu ma w .htaccess własne reguły przepisywania, więc te dodaj PRZED tamtymi.

RewriteBase wymagane jest na hostach wirtualnych, w przeciwnym razie niepotrzebne.

Ostatecznie zawsze w takich sytuacjach można stworzyć własny plik "obrazek.php" z odpowiednią zawartością sprawdzającą QUERY_STRING i przekierowującą jak należy.

Edytowano przez Piotr GRD (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Piotr, bardzo dziękuję za tak szybką i rzeczową odpowiedź. Nic dziwnego, że mi przekierowania nie wychodziły. Nie miałem pojęcia o QUERY_STRING. htaccess ma własne reguły, ale do zmieniania np. search.php na szukaj, itp. Reguły tworzenia linków są gdzieś wpisane w kodzie.

 

Mam jeszcze jedno pytanie. Adresy mi zaczęło przekierowywać na nowe, obrazki mi się pokazują, ale teraz mam link w takiej postaci adres.pl:/obrazek/998/?998

 

czy da się jakoś skasować tą końcówkę ?998?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się

Zaloguj się, aby obserwować  

×