Avatar billede scootergrisen Nybegynder
21. januar 2011 - 05:51 Der er 10 kommentarer og
1 løsning

æøå i filnavne

Hvis jeg har en fil med PHP kode som jeg kalder for æøå.php og tilgår den i browseren så virker det ikke.
Der er intet output i browseren.

Men hvis jeg omdøber den til abc.php eller anden filnavn uden æøå så virker det.

Hvordan kan det være ?
Avatar billede michael_stim Ekspert
21. januar 2011 - 07:38 #1
Det er aldrig en god idé at bruge mellemrum, specialtegn osv i filnavne.
Avatar billede scootergrisen Nybegynder
21. januar 2011 - 07:45 #2
Nej det har du nok ret i men nu vil jeg alligevel prøv og undersøge hvad man kan så dette spørgsmål handler ikke om det er en god ide at bruge æøå i filnavne.
Avatar billede michael_stim Ekspert
21. januar 2011 - 07:58 #3
Fordi der ikke er nogen der har "sagt" til det protocol der nu bliver brugt at æøå er OK at bruge.
Avatar billede scootergrisen Nybegynder
21. januar 2011 - 08:07 #4
Det virker fint nok hvis det er en HTML fil med æøå.html så det kan vel ikke være på grund af HTTP protokollen fordi det er samme protokol der bruges ved en PHP fil.

http://localhost/æøå.html > virker
http://localhost/æøå.php > virker ikke
Avatar billede BufferUnderrun Nybegynder
21. januar 2011 - 09:05 #5
Det er simpelthen ikke lovligt at bruge æøå i en URL, jf. selve RFC-1738 specifikationen:

"...Only alphanumerics [0-9a-zA-Z], the special characters "$-_.+!*'()," [not including the quotes - ed], and reserved characters used for their reserved purposes may be used unencoded within a URL."

Du kan dog sagtens kalde din fil selvom den hedder æøå.php, du skal bare URL-encode den først. Så kommer din URL til at se sådan her ud:

http://domain.com/%C3%A6%C3%B8%C3%A5.php

Det er nok ikke helt sådan du gerne ville have den så ud, men det er den eneste løsning der virker 100% jf. standarden. For at URL-encode specialtegn så de kan bruges i en URL, har jeg lavet et lille værktøj her: http://ole.michelsen.dk/tools/uriencode.html
Avatar billede scootergrisen Nybegynder
21. januar 2011 - 09:25 #6
#5 >

Det virker hverken hvis jeg skriver det direkte :
blåbærgrød.php > Viser en tom side

eller encoder det i ASCII :
bl%E5b%E6rgr%F8d.php > Giver en 403 forbidden fejl

eller encoder det i UTF8 :
bl%C3%A5b%C3%A6rgr%C3%B8d.php > Viser en tom side


bl%C3%A5b%C3%A6rgr%C3%B8d.php skulle være den rigtige adresse men af en eller anden grund får jeg bare en tom side fordi det er en PHP fil.
Hvis det var en HTML fil bl%C3%A5b%C3%A6rgr%C3%B8d.html så virker det.
Avatar billede repox Seniormester
21. januar 2011 - 14:30 #7
#6
Det afhænger af rigtig mange ting - serverens filsystem, installerede tegnsægt, webserveren, tilknyttede moduler til webserveren og så videre...

Det er ikke muligt at afgøre hvad det er præcist der lige gør det virker på den ene måde, men ikke den anden på din server. På min vil det eksempelvis ikke være muligt at tilgå hverken æøå.php eller æøå.html - men nu kunne jeg heller aldrig finde på at navngive mine filer således.

Så det korte svar er at du ikke kan få svar på det, for det afhænger af det setup du er på.
Avatar billede scootergrisen Nybegynder
21. januar 2011 - 14:44 #8
Jeg tænker at det enten må være PHP eller Apache.

Umiddelbart kunne det være PHP fordi Apache kan jo godt vise æøå.html som ikke indenholder php kode.
Avatar billede repox Seniormester
21. januar 2011 - 14:47 #9
Som sagt - at forsøge at rationalisere det for at kunne løse fremtidige problemer på den konto, vil være meningsløst.

Det kan muligvis være PHP og/eller Apache der er problemet i netop dit tilfælde. I mit - eksempelvis - skyldes det mit installerede tegnsæt på Linux.
Avatar billede scootergrisen Nybegynder
21. januar 2011 - 14:59 #10
I min apache conf.php fil står :
AddType application/x-httpd-php .php

Med den opsætning virker æøå.php ikke (den giver bare en tom side)

Ændre jeg:
AddType application/x-httpd-php .php
Til:
AddType application/x-httpd-php .php .html

Så er det både æøå.php OG æøå.html som ikke virker. De viser så begge en tom side.

Fjerner jeg "AddType application/x-httpd-php" linien så kan jeg godt tilgå æøå.php og PHP koden bliver selvfølgelig ikke udført men jeg får istedet mulighed for at downloade filen.
Avatar billede scootergrisen Nybegynder
20. februar 2011 - 01:00 #11
Hvad så hvis man ikke syns man har fået et svar hvad er det så meningen man skal gøre ?
Jeg får emails om at jeg har dette spørgsmål som er åbent.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester