|
| Navn på side, der ikke findes... Fra : MZH |
Dato : 12-06-02 21:47 |
|
Bag denne kryptiske overskrift gemmer der sig et ganske simpelt
problem:
Jeg har på mit site lavet min egen fejlside i stedet for 404
standardsiden (via htaccess).
Nu er det, jeg gerne vil have, at der på denne side står adressen på
den side, brugeren har kaldt, men som ikke findes.
Altså: Brugeren kalder www.mydomain.dk/page.html som ikke findes.
Derfor får han en 404 feljside, hvor der står noget i retning af
"Den side du har kaldt ( www.mydomain.dk/page.html) findes ikke. Bare
ærgerligt!"
Findes der en variabel á la HTTP_REFERRER, som indeholder navnet på
den side, der oprindelig blev kaldt? Adressen på den kaldte side står
jo stadigvæk i adresselinien, så den må vel kunne hives ud et sted
fra?
Mvh.
Mikkel
| |
Lars Petersen (12-06-2002)
| Kommentar Fra : Lars Petersen |
Dato : 12-06-02 21:51 |
|
> Jeg har på mit site lavet min egen fejlside i stedet for 404
> standardsiden (via htaccess).
[...]
> Findes der en variabel á la HTTP_REFERRER, som indeholder navnet på
> den side, der oprindelig blev kaldt? Adressen på den kaldte side står
> jo stadigvæk i adresselinien, så den må vel kunne hives ud et sted
> fra?
Yeps: $_SERVER["REQUEST_URI"] eller $REQUEST_URI
:)
--
-
Lars
http://coder.dk/sohofaq.php - Uofficiel WOL SOHO 77 FAQ
http://wshlman.moons.dk/ - Say goodbye to GameSpy - A Free Half Life
Manager!
To mail me remove your-pants.
| |
MZH (13-06-2002)
| Kommentar Fra : MZH |
Dato : 13-06-02 11:26 |
|
>Yeps: $_SERVER["REQUEST_URI"] eller $REQUEST_URI
Takker - det var lige det, jeg skulle bruge!
Mvh.
Mikkel
| |
Jonas Voss (19-06-2002)
| Kommentar Fra : Jonas Voss |
Dato : 19-06-02 23:49 |
|
"Lars Petersen" <lp@your-pants.coder.dk> writes:
> > Findes der en variabel á la HTTP_REFERRER, som indeholder navnet på
> > den side, der oprindelig blev kaldt? Adressen på den kaldte side står
> > jo stadigvæk i adresselinien, så den må vel kunne hives ud et sted
> > fra?
>
> Yeps: $_SERVER["REQUEST_URI"] eller $REQUEST_URI
Jeg blev inspireret af Mikkels ide og ville lave det samme trick, men
det fungerer ikke rigtig hos mig. Den skriver titlen paa min fejlside, i
stedet for den side der resulterede i 404'eren. Den adresse der
oprindeligt oenskedes hentet staar heller ikke i adresselinien.
Er det en PHP-ting eller en Apache-ting?
PHP v. 4.1.2
Apache v. 1.3.20
--
| Jonas @ 55.7,12.5 | < http://verture.net/> |
| |
Peter Brodersen (19-06-2002)
| Kommentar Fra : Peter Brodersen |
Dato : 19-06-02 23:53 |
|
On 20 Jun 2002 00:48:49 +0200, Jonas Voss <spamthis@verture.net>
wrote:
>Den skriver titlen paa min fejlside, i
>stedet for den side der resulterede i 404'eren. Den adresse der
>oprindeligt oenskedes hentet staar heller ikke i adresselinien.
Så har du sandsynligvis fejlagtigt sat din Apache op, hvor du har en
absolut URL som ErrorDocument.
Det betyder, at brugeren bliver viderestillet til din fejlside (som
altså hentes som en helt normal side), i stedet for at få den serveret
med rette HTTP-headers.
"Forkert":
ErrorDocument 404 http://www.domæne.dk/fejl404.php
"Korrekt":
ErrorDocument 404 /fejl404.php
--
- Peter Brodersen
| |
Jonas Voss (20-06-2002)
| Kommentar Fra : Jonas Voss |
Dato : 20-06-02 00:04 |
|
Peter Brodersen <usenet@ter.dk> writes:
> Så har du sandsynligvis fejlagtigt sat din Apache op, hvor du har en
> absolut URL som ErrorDocument.
>
> Det betyder, at brugeren bliver viderestillet til din fejlside (som
> altså hentes som en helt normal side), i stedet for at få den serveret
> med rette HTTP-headers.
>
> "Forkert":
> ErrorDocument 404 http://www.domæne.dk/fejl404.php
>
> "Korrekt":
> ErrorDocument 404 /fejl404.php
Majet, majet fint.
Tak!
--
| Jonas @ 55.7,12.5 | < http://verture.net/> |
| |
Jonas Koch Bentzen (12-06-2002)
| Kommentar Fra : Jonas Koch Bentzen |
Dato : 12-06-02 23:30 |
|
MZH wrote:
>
> Jeg har på mit site lavet min egen fejlside i stedet for 404
> standardsiden (via htaccess).
>
> Nu er det, jeg gerne vil have, at der på denne side står adressen på
> den side, brugeren har kaldt, men som ikke findes.
echo $_SERVER["REDIRECT_STATUS"];
| |
Peter Brodersen (13-06-2002)
| Kommentar Fra : Peter Brodersen |
Dato : 13-06-02 00:32 |
|
On Thu, 13 Jun 2002 00:30:12 +0200, Jonas Koch Bentzen
<ingen.email@eksempel.dk> wrote:
>echo $_SERVER["REDIRECT_STATUS"];
Den ved vi vel et ellet andet sted godt er 404?
--
- Peter Brodersen
| |
Jonas Koch Bentzen (13-06-2002)
| Kommentar Fra : Jonas Koch Bentzen |
Dato : 13-06-02 09:34 |
|
Peter Brodersen wrote:
> On Thu, 13 Jun 2002 00:30:12 +0200, Jonas Koch Bentzen
> <ingen.email@eksempel.dk> wrote:
>
>
>>echo $_SERVER["REDIRECT_STATUS"];
>
>
> Den ved vi vel et ellet andet sted godt er 404?
Den forstod jeg ikke : ) Hvad mener du?
| |
Peter Brodersen (13-06-2002)
| Kommentar Fra : Peter Brodersen |
Dato : 13-06-02 09:43 |
|
On Thu, 13 Jun 2002 10:34:15 +0200, Jonas Koch Bentzen
<ingen.email@eksempel.dk> wrote:
>>>echo $_SERVER["REDIRECT_STATUS"];
>> Den ved vi vel et ellet andet sted godt er 404?
>Den forstod jeg ikke : ) Hvad mener du?
REDIRECT_STATUS vil omhandle hvordan, man kom hen til siden, fx ved et
intert Apache-subrequest.
Hvis den php-side, der er sat til at være ens ErrorDocument 404,
printer $_SERVER["REDIRECT_STATUS"] ud, vil outputtet være "404". Ikke
andet. Det kan være brugbart, hvis man fx sætter den samme PHP-fil til
at være ErrorDocument for en lang række fejlkoder, fx 401, 403, 404,
etc., og på baggrund af REDIRECT_STATUS giver forskellig output.
Mikkel ville have URI'en på den fil, som ikke findes. Det hjælper
REDIRECT_STATUS ikke på.
--
- Peter Brodersen
| |
Jonas Koch Bentzen (13-06-2002)
| Kommentar Fra : Jonas Koch Bentzen |
Dato : 13-06-02 11:22 |
|
Peter Brodersen wrote:
> On Thu, 13 Jun 2002 10:34:15 +0200, Jonas Koch Bentzen
> <ingen.email@eksempel.dk> wrote:
>
>
>>>>echo $_SERVER["REDIRECT_STATUS"];
>>>
>>>Den ved vi vel et ellet andet sted godt er 404?
>>
>>Den forstod jeg ikke : ) Hvad mener du?
>
>
> REDIRECT_STATUS vil omhandle hvordan, man kom hen til siden, fx ved et
> intert Apache-subrequest.
>
> Hvis den php-side, der er sat til at være ens ErrorDocument 404,
> printer $_SERVER["REDIRECT_STATUS"] ud, vil outputtet være "404". Ikke
> andet. Det kan være brugbart, hvis man fx sætter den samme PHP-fil til
> at være ErrorDocument for en lang række fejlkoder, fx 401, 403, 404,
> etc., og på baggrund af REDIRECT_STATUS giver forskellig output.
Ah ja, selvfølgelig. Det var mig, der huskede forkert - REDIRECT_STATUS
giver koden, ikke URI'en. Jeg lavede for længe siden en
håndter-alle-fejl-side i PHP på den måde, du har beskrevet ovenfor, så
derfor kunne jeg bare huske REDIRECT_STATUS, men altså ikke, hvad den
stod for : )
| |
|
|