Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP][HTML]Przekierowanie jeżeli podstrona nie istnieje - 404
kleszcz12
post
Post #1





Grupa: Zarejestrowani
Postów: 102
Pomógł: 0
Dołączył: 16.03.2008

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


Witam, czy da się zrobić coś takiego:

Jeżeli użytkownik przejdzie na podstronę która nie istnieje, zostaje przekierowany na podaną stronę?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 15)
l0ud
post
Post #2





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

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


Tak ale to zależy od konfiguracji serwera. Wiele hostingów pozwala na utworzenie własnych stron błędów, wtedy po prostu do takiej umieszczasz przekierowujący kod js (window.location.href = ), albo/i link do właściwej strony.
Go to the top of the page
+Quote Post
pyro
post
Post #3





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

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


Cytat(l0ud @ 18.06.2008, 15:21:33 ) *
Tak ale to zależy od konfiguracji serwera. Wiele hostingów pozwala na utworzenie własnych stron błędów, wtedy po prostu do takiej umieszczasz przekierowujący kod js (window.location.href = ), albo/i link do właściwej strony.


.htaccess
Kod
ErrorDocument numer_bledu /strona_na_ktora_ma_byc_przekierowanie


nie prosciej l0ud?

przykład:

Kod
ErrorDocument 404 /strona_nie_istnieje.php
Go to the top of the page
+Quote Post
kleszcz12
post
Post #4





Grupa: Zarejestrowani
Postów: 102
Pomógł: 0
Dołączył: 16.03.2008

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


A jak nie działa tzn. że nie da się zrobić na danym hostingu? [w tym przypadku masternet.pl]
Go to the top of the page
+Quote Post
l0ud
post
Post #5





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

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


pyro, nie wszędzie jest apache (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

kleszcz12, spróbuj zrobić tak jak napisał pyro. Jeżeli nie zadziała skontaktuj się z supportem tego hostingu, czy to nie jest możliwe (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
-Kuba_Bzc-
post
Post #6





Goście







A ja troszke zbocze z tematu i zapytam czy jest mozliwosc aby user klikajacy z googla na jakas podstrone serwisu byl przenoszony za kazdym razem na strone glowna?

Z gory dziekuje za odpowiedz
Go to the top of the page
+Quote Post
revyag
post
Post #7





Grupa: Przyjaciele php.pl
Postów: 2 258
Pomógł: 16
Dołączył: 21.09.2004
Skąd: Kielce

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


Sprawdzaj HTTP_REFERER i jak zawiera google to redirect.
Go to the top of the page
+Quote Post
-Kuba Bzc-
post
Post #8





Goście







hmmm mozna by bylo troszeczke jasniej bo jestem poczatkujaca osoba w tych sprawach (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Flaku
post
Post #9





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 2.10.2005
Skąd: Częstochowa

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


Chciał bym odświeżyć temat.

Jestem w trakcie robienia własnych stron błędów ale kiedy daje kod:

Kod
ErrorDocument 404 /system/error/error.php?e=404


w przeglądarce pojawia się wiadomość

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.

Kiedy dopisuję adres strony:

Kod
ErrorDocument 404 http://adresstrony.pl/system/error/error.php?e=404


wtedy wszystko działa jak należy ale ja bym wolał żeby to było zrobione bardziej uniwersalnie (bez edycji pliku po zmianie adresu).

Próbowałem też tak:

Kod
ErrorDocument 404 http://%{HTTP_HOST}/system/error/error.php?e=404


no ale to też niestety nie działa, nie pobiera adresu strony.

może ktoś ma jakiś pomysł jak mogę to zrobić ?

Z góry dziękuję za pomoc.
Go to the top of the page
+Quote Post
pyro
post
Post #10





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

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


wydaje mi sie ze powinno byc tak:
Kod
ErrorDocument 404 system/error/error.php?e=404


Ten post edytował pyro 24.06.2008, 19:21:20
Go to the top of the page
+Quote Post
Flaku
post
Post #11





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 2.10.2005
Skąd: Częstochowa

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


Trochę inny błąd ale bardzo podobny:

Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.
Go to the top of the page
+Quote Post
pyro
post
Post #12





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

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


system/error/error.php?e=404

zobacz czy t sciezka napewno istnieje
Go to the top of the page
+Quote Post
Flaku
post
Post #13





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 2.10.2005
Skąd: Częstochowa

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


Na 100% istnieje.
Go to the top of the page
+Quote Post
l0ud
post
Post #14





Grupa: Zarejestrowani
Postów: 1 387
Pomógł: 273
Dołączył: 18.02.2008

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


Jeżeli wywala błąd 500, to oznacza że podana ścieżka: system/error/error.php?e=404 jest niepoprawna. (musi być / na początku).

Problem w tym, że należy podać pełną ścieżkę od folderu w którym apache przechowuje strony. Niestety nie wiem jak to ma się przy virtualhostach (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Go to the top of the page
+Quote Post
pyro
post
Post #15





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

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


Cytat(l0ud @ 25.06.2008, 10:40:32 ) *
Jeżeli wywala błąd 500, to oznacza że podana ścieżka: system/error/error.php?e=404 jest niepoprawna. (musi być / na początku).

Problem w tym, że należy podać pełną ścieżkę od folderu w którym apache przechowuje strony. Niestety nie wiem jak to ma się przy virtualhostach (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)



l0ud, raczej nie musi bo mam u siebie na komputerze plik .htacces z dyrektową ErrorDocument wskazująca na dokument bez ukośnika i jak wół działa wyśmienicie
Go to the top of the page
+Quote Post
Flaku
post
Post #16





Grupa: Zarejestrowani
Postów: 53
Pomógł: 0
Dołączył: 2.10.2005
Skąd: Częstochowa

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


Właśnie w większości przypadków widziałem że było to bez "\" ale i z "\" działało, a u mnie a ni tak a siak. Jeżeli podam pełna ścieżkę tkj.

Kod
ErrorDocument 404 http://www.moja-domena.pl/system/error/error.php?e=404


wtedy wszystko działa, no ale jak już pisałem chciał bym aby to było bardziej funkcjonalne. Może ktoś wie czemu nie działa jeżeli zrobię tak:

Kod
ErrorDocument 404 http://%{HTTP_HOST}/system/error/error.php?e=404


niby daje przekierowanie ale w adresie strony pojawia się właśnie to co podałem a nie link z domeną.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.08.2025 - 15:04