Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Friendly urls - przekierowanie z index.pl?page=adres na /adres, I przekierowanie 301 ze starych adresów na nowe
belwarg
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 26.01.2013

Ostrzeżenie: (0%)
-----


Witam!
Mam problem z ustawieniem przyjaznych linków na stronie. W grę wchodzi tylko htaccess, nie mam możliwości modyfikowania kodu i dopisania jakiegoś routera w php. Generalnie wygląda to tak że jest plik index.php w którym następuje wczytanie treści poszczególnych podstron za pomocą GET.
Na chwilę obecną linki wyglądają w ten sposób:
www.adres.pl/index.php?page=adres_podstrony

Chcę je wszystkie zmienić na
www.adres.pl/adres_podstrony

Z tym nie mam żadnego problemu
RewriteRule ^adres_podstrony$ index.php?page=adres_podstrony [QSA,L]
i wszystko działa gdy wpisuję nowy adres.

Teraz chciałbym jeszcze dodać 301 ze starych adresów na nowe (bo co z tego że linkowanie na stronie zmienię na nowe jeśli zaindeksowane są stare adresy). I tutaj zaczynają się schody. Próbowałem
RewriteCond %{QUERY_STRING} ^page=adres_podstrony$
RewriteRule ^(.*)$ http://www.adres.pl/adres_podstrony? [R=301,L]
ale wtedy po wpisaniu starego adresu wpadam w pętlę przekierowań

Jak to ogarnąć?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Zapętlenie się jest tu dość oczywistą rzeczą. Musisz w kodzie pozmieniać wszystkie stare adresy na nowe. Nie ma bata.

Od biedy możesz przechwycić treśc wygenerowanej strony (przy pomocy ob_start() itp) i w locie zmieniać stare adresy na nowe


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
belwarg
post
Post #3





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 26.01.2013

Ostrzeżenie: (0%)
-----


Zmiana linków na stronie (są głównie w menu + kilka w treści poszczególnych podstron) nie jest problemem. Chodzi mi o to że jeśli nie dodam 301 ze starych adresów sporo stracę w SERPach - niektóre podstrony i frazy były pozycjonowane i nie mogę sobie na to pozwolić. Wygląda niestety na to że będę musiał pogrzebać w kodzie poprzednika...
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




A próbowałeś zmienić kolejnosc przekierowań w .htaccess?


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
belwarg
post
Post #5





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 26.01.2013

Ostrzeżenie: (0%)
-----


Tak, niezależnie od kolejności efekt jest ten sam - pętla przekierowań.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 13:49