PDA

Zobacz pełną wersję : bezwzględne przekierowanie a kod błędu 404



color1
25-07-2009, 04:01
Mam następujący problem. Google zaindeksowało sporo moich podstron z długimi nazwami. Po ustawieniu krótkich nazw w joomli 1.5.x, kliknięcie na linku w wynikach w google powoduje błąd "404 - Nie znaleziono komponentu".

Próbowałem wpisać w .htaccess

ErrorDocument 404 http://web.mojawitryna/index.php

ale to niestety nie działa (wpisanie pelnej sciezki do index.php tez nie pomaga, ale to chyba nie ma związku bo komunikat jest generowany przez joomle a nie apache'a). Czy jest jakiś sposób na to aby uzyskać oczekiwany efekt, że cokolwiek będzie wpisanie w adresie np. www.mojawitryna/costam (http://www.mojawitryna/costam) - będzie powodowało otwarcie strony głównej ?


Gdzie tkwi problem ?

Bazyl
25-07-2009, 09:06
Może sh404sef?

color1
27-07-2009, 13:09
A moze jakies inne rozwiazanie ? Chodzi o to aby przekierowac na strone glowna kazde bledne wywolanie strony, ze skutkiem "404 brak komponentu"

color1
28-07-2009, 19:08
Czy doprawdy nie ma jakiegoś prostego sposobu na pojawiający się "404 - nie znaleziono komponentu" ?
Fakt, mogę wyłączyć w adminie "proste adresy" i efekt będzie taki jak oczekuję, ale nie o to przecież chodzi...
Nie chcę też instalować kolejnego - być może zbędnego komponentu sh404sef, zwłaszcza że występują z nim problemy.

big_krzysiek
28-07-2009, 19:36
niedawno na forum ktos pisal o jakims dodatku (i tutaj prosba do tej osoby jesli czyta ten post), ktory przekierowuje przy pojawieniu sie bledu (bylo tam wymienione kilka numerow bledow, ktore obsluguje) na wlasna strone....cos tak jak w pluginie jsecure.
niestety nie moge tego znalezc...

a co do generowania prostych adresow...zobacz czy zrobiles wszystko tak jak nalezy przy uruchomieniu ich w joomli...
zastanow sie nad sh404sef o ktorym pisze bazyl...

a moze po prostu musisz wyczyscic cache przegladarki ...

color1
28-07-2009, 20:48
Ale mi chodzi o coś zupełnie innego - przyjazne adresy już mam poprzez samą joomle (proste adresy) i tego nie chcę ruszać.
Problem się pojawia kiedy wpisze w przeglądarce nieistniejący adres strony. Bez włączonego mod_rewrite i z długimi adresami, cokolwiek bym nie wpisal po adresie strony glownej /, i tak otwierala sie strona glowna (index.php) natomiast z prostymi adresami to nie dziala i pojawia sie 404 (komunikat joomli a nie apache'a)
Problem w praktyce dotyczy zaindeksowanych stron w googlach, w sytuacji kiedy pozmieniałem strukturę (nazewnictwo) menu - gdzie w prostych adresach pojawiaja sie teraz inne sciezki do danej strony. Dlatego chcialbym osiagnac taki efekt, ze każde błędne wywolanie strony zamiast wyskakujacego 404, otwieraloby index.pxp.
Ewentualnie jesli to mozliwe, prosze o wskazanie w którym miejscu generowana jest strona z 404 i w jaki sposob spowodowac, aby dzialalo automatycznie przekierowanie z niej na index.php (np. po 1 sekundzie), cos na zasadzie wpisu w plik htmlHTTP-EQUIV="REFRESH" content="2; url=i tak dalej...

color1
29-07-2009, 14:00
No dobra, poradziłem już sobie - wprawdzie połowicznie, ale efekt jest zadowalający, po prostu wstawiłem w error.php redirect na stronę główną.
Najwyżej poczekam na odświerzenie zaindeksowanych wczesniej w googlach, ścieżek do stron.

Pozdr. :)

Bazyl
29-07-2009, 15:17
A gdyby dać przekierowanie na konkretne id artykułu?