![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 18.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Męczę się z tym już dobrą chwilę i cały czas nie chce zadziałać. Mianowicie. Mam stronę gdzie adres wygląda następująco: www.xxx.pl/nazwa-kategorii-c-123_456_789.html 123 - id głównej kategorii. 456 - podkategorii 789-podpod kategorii Muszę zmienić teraz id tej pod pod kategori na np. 999 czyli nowy adres wygląda: www.xxx.pl/nazwa-kategorii-c-123_456_999.html i ok, tylko stary link jest calkiem dobrze spozycjonowany i nie chciał bym tego psuć dlatego chciałbym przekierować . Wydawało mi się, że nic prostszego, napisałem regułę
ale niestety niedziała (IMG:style_emoticons/default/sad.gif) jakieś pomysły? Dodam tylko, że jest to oscommerce i ma zainstalowane seo urls i niewiem czy w związku z tym można przekierować, przekierowany adres? Powyższe polecenie nie działa bez względu czy dam go na początku htaccess czy na końcu. Ten post edytował bezkitu 12.11.2009, 14:09:40 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 592 Pomógł: 445 Dołączył: 12.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
A czy Twoja reguła w ogóle coś przepisuje?
Coś bardziej takiego powinno być. Kod RewriteRule ^(nazwa-kategorii-c+)-([0-9]+)_([0-9]+)_([0-9]+).html/?$ index.php?id_gl=$2&podkategoria=$3&podpodkategoria=$4 [L]
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 18.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
No wydaje mi się że przepisuje. To może być nawet na twardo jak zwykłe przekierowanie 301 czyli np:
CODE RewriteCond % ^xxx.pl/nazwa-kategorii-c-123_456_999.html$ RewriteCond % ^www.xxx.pl/nazwa-kategorii-c-123_456_999.html$ RewriteRule ^(.*)$ http://www.xxx.pl/nazwa-kategorii-c-123_456_789.html/$1 [R=301,L] i nie wiem czemu ale nie chce mi to działać Ten post edytował bezkitu 12.11.2009, 14:47:09 |
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 18.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
No dobra to, że jest źle to juz zdążyłem się przekonać (IMG:style_emoticons/default/smile.gif) . Interesuje mnie jak jest poprawnie więc jeśli ktoś potrafi mi pomóc był bym bardzo wdzięczny.
|
|
|
![]()
Post
#6
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 18.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Przeczytałem ten artykuł w obie strony już dużo wcześniej i dalej nie mogę znaleźć odpowiedzi na moje pytanie. Jeśli nie chcesz mi udzielić odpowiedzi wprost to może chociaż podaj paragraf w którym mam jej szukać?
Może inaczej.. pokaże swój tok myślenia i powiedz mi gdzie popełniam błąd mam juz plik .htaccess który działa i sprawnie obsługuje seo urls, więc dopisuje nowa linijkę RewriteRule (wiadomo) ^ (dowolny początek) nazwa-kategori-c-1\.html (stary adres) nazwa-kategori-c-2\.html (nowy adres) [R=301,L] (flagi) co nam daje: RewriteRule ^nazwa-kategori-c-1\.html nazwa-kategori-c-2\.html [R=301,L] i gdzie jest błąd i jak powinno to wygladac dobrze |
|
|
![]()
Post
#8
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Pokazałem, czego błąd dotyczy - nie podajesz zmiennej do testowania przy RewriteCond.
Zobacz sobie w dokumentacji, jak wygląda konstrukcja RewriteCond. |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 18.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Ok, po dłuższej chwili przemyśleń doszedłem do tej wersji:
RewriteCond %{HTTP_HOST} ^nazwa-kategorii-c-123_456_789$ RewriteRule ^(.*)$ http://www.xxx.pl/nazwa-kategorii-c-123_456_999$1 [R=301,L] jednak dalej nie działa.. może jeszcze jakieś podpowiedzi? (IMG:style_emoticons/default/smile.gif) Ten post edytował bezkitu 16.11.2009, 15:20:10 |
|
|
![]()
Post
#10
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Nie działa, to znaczy co się dzieje?
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 18.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
przekierowuje mnie na główna co sie dzieje zawsze gdy sie wpisze niewlasciwy adres (po zmianie ID niema juz kategori 789 wiec niema tez takiego adresu, dzieje sie tak niezależnie czy regułę dopisuje na poczatku przed innymi czy na koncu
|
|
|
![]()
Post
#12
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Ale HTTP_HOST nigdy nie będzie się równał czemuś takiemu. (IMG:style_emoticons/default/winksmiley.jpg)
Jak to odpalasz? Na localhost? |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 18.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
na home.pl
|
|
|
![]()
Post
#14
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
No to nigdy to nie zadziała, gdyż HTTP_HOST zawiera domenę serwera, na którym jest uruchamiany skrypt.
|
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 18.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
czyli co niemożliwe? niechce mi sie wierzyć, że nie można przekierowac pojedyńczego adresu wewnatrz strony na inny
|
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 33 Pomógł: 5 Dołączył: 2.11.2006 Skąd: 52.259 °N, 21.020 °E Ostrzeżenie: (0%) ![]() ![]() |
A gdyby tak
RewriteCond %{REQUEST_URI} ^nazwa-kategorii-c-123_456_789$ |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 18.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
coś się ruszyło, chociaż dalej nie jest ok (IMG:style_emoticons/default/smile.gif) teraz zostałem przekierowany na stronę
http: // www.xxx.pl/nazwa-kategori-123-456-999.htmlindex.php?language=pl&cPath=123_456_789 rozumiem, że pewnie gryzie się z jakąś inna regułą ehh .. Ten post edytował bezkitu 17.11.2009, 12:35:12 |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 33 Pomógł: 5 Dołączył: 2.11.2006 Skąd: 52.259 °N, 21.020 °E Ostrzeżenie: (0%) ![]() ![]() |
To może o $1 w tej regule jest za dużo?
|
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 18.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
bez $1 nie dziala (przenosi na strone główna) a z samym $ dzieje się praktycznie to samo ehh a wydawalo sie że bedzie takie proste (IMG:style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 33 Pomógł: 5 Dołączył: 2.11.2006 Skąd: 52.259 °N, 21.020 °E Ostrzeżenie: (0%) ![]() ![]() |
Teraz to już strzelam, ale reguła wydaje się prosta:
RewriteCond %{REQUEST_URI} ^nazwa-kategorii-c-123_456_789$ RewriteRule ^(.*)$ http://www.xxx.pl/nazwa-kategorii-c-123_456_999.html?$1[R=301,L] a może RewriteCond %{REQUEST_URI} ^nazwa-kategorii-c-123_456_789$ RewriteRule ^(.*)$ http://www.xxx.pl/nazwa-kategorii-c-123_456_999.html [R=301,L] Kurcze, jak zapisujesz url jako tekst a nie link? Ten post edytował Gapollo 17.11.2009, 13:15:32 |
|
|
![]()
Post
#21
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 18.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
DZIAŁA (IMG:style_emoticons/default/smile.gif)
zadziałała wersja z samym "?" bez $ .. niewiem czemu tak szczerze mówiąc i jest to dość ciekawe ale działa (IMG:style_emoticons/default/smile.gif) RewriteCond %{REQUEST_URI} ^nazwa-kategorii-c-123_456_789$ RewriteRule ^(.*)$ http://www.xxx.pl/nazwa-kategorii-c-123_456_999.html? [R=301,L] dzięki bardzo! ps. poprostu robie spacje po http: // www Ten post edytował bezkitu 17.11.2009, 13:28:23 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 12.10.2025 - 21:23 |