Avatar billede f-andersen Nybegynder
04. september 2006 - 14:39 Der er 14 kommentarer og
1 løsning

PHP med filnavne og stinavne

Hej

Jeg har set på en del hjemmesider at der er mange der benytter sig af at linkte sådan http://minside.dk/profil istedet for http://minside.dk/profil.php

Jeg har søgt lidt på nettet efter det, men jeg synes ikke lige jeg kan finde guldkornet ;o)

Jeg tror næppe folk laver en mappe der hedder profil, og laver en index.php i den mappe :o)

Hvordan gør man det? Grunden til jeg gerne vil have det til at se sådan ud, er at jeg synes selv jeg har et "stilrent" design, og vil gerne have at mine links ser "stilrene" ud...
Avatar billede leif Seniormester
04. september 2006 - 14:42 #1
Hvordan folk gør, kan rent faktisk være en mappe som hedder profil med en index i
Avatar billede Slettet bruger
04. september 2006 - 15:06 #2
Jeg ved, at i hvert fald Apache vil lede efter eksempelvis filen "profil.php" hvis du bare skriver http://url.tld/profil .

Men det man typisk gør, er at lave en såkaldt ".htaccess" fil, der tager et request til http://url.tld/profil og sender den til eksempelvis http://url.tld/index.php?side=profil

Gem en .htaccess fil i roden af dit domain med følgende:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-F
RewriteRule ^(.*)$ /index.php?page=$1&%{QUERY_STRING}

Giver det mening? :)

--pacroon
Avatar billede f-andersen Nybegynder
04. september 2006 - 15:12 #3
Det lyder bare vildt bøvlet og uoverskueligt...
Det tætteste jeg kommer på en løsning er:
http://www.phpuniverset.dk/show_artikels.phtml?ArtikelID=24&artikel=Nice.URI

Ved ikke om det kan være til hjælp...
Avatar billede miqe Nybegynder
04. september 2006 - 15:24 #4
Variablen $_SERVER["REQUEST_URI"] vil indholde request uden domæne, men inkl. variable.
Herfra kan du bruge request'et til at trække indhold fra fil på alternativt sted.
På den måde kan du have en alternativ bibliotekststruktur der er synlig (men ikke fysisk), samt en fysisk bibliotekststruktur, der ikke er synlig udefra.
Med andre ord kan du sagtensen have en detaljeret søgemaskinevenlig biblioteksstruktur uden at skulle oprette en masse mapper med en index-fil i hver.
Avatar billede f-andersen Nybegynder
04. september 2006 - 15:27 #5
mige, i mine øre lyder det rigtigt.. Har du mulighed for at komme med et eksempel?
Avatar billede Slettet bruger
04. september 2006 - 15:27 #6
Forskellen på pacroons løsning og den du selv kommer med er, at du stadig har .php med i din løsning. Rent teknisk er forskellen at pacroons løsning bruger Apaches indbyggede URL Rewrite Engine og du lader PHP foretage omskrivningen.

Hvis du beslutter dig for at omskrive med PHP istedet for URL Rewrite, skal du sandssynligvis lave en masse kode om, hvorimod Rewrite bare omskriver adressen.

Derudover kan jeg ikke forstå at du mener, at det er "bøvlet og uoverskueligt", da den løsning du kommer med har meget mere kode end de 3 linjer som pacroon kommer med.
Avatar billede Slettet bruger
04. september 2006 - 15:28 #7
mige: Den kvikke bruger vil ikke se det som en filstruktur (hverken fysisk eller virtuelt), idet der stadig står .php :)
Avatar billede Slettet bruger
04. september 2006 - 15:28 #8
f-andersen: Hvis du gad ulejlige dig med at læse pacroons svar, ville du vide at du allerede har fået et eksempel på det.
Avatar billede f-andersen Nybegynder
04. september 2006 - 15:29 #9
Jeg vil lige sige at jeg har kun fået lavet min index.php fil i roden, og har ikke fået lavet noget som helst anden kode, da jeg netop tænkte at det ville være mere besværligt at lave det bagefter :)
Avatar billede f-andersen Nybegynder
04. september 2006 - 15:42 #10
philip:
Jeg har skam læst pacroon' svar. Men jeg tænkte mere på mige' løsningsforslag.

Jeg har ikke lige mulighed for at teste af i skrivende stund, men jeg vil kigge på det når jeg kommer hjem fra arbejde :o)
Avatar billede miqe Nybegynder
04. september 2006 - 16:02 #11
Hmm... Jeg har nok været lidt hurtigt ude...
Det kan godt være det jeg har set var akompagnieret af nogle ikke-standard indstillinger i apache.
Avatar billede Slettet bruger
04. september 2006 - 16:06 #12
f-andersen: helt i orden ;)
Jeg synes du skal kigge på http://en.wikipedia.org/wiki/.htaccess når du har tid, der er nogle rigtig gode eksempler på brugen af .htacess (wikipedia har da også alt efterhånden ;)
Avatar billede f-andersen Nybegynder
04. september 2006 - 17:22 #13
Pacroon, det gir faktisk så meget mening, at det rent faktisk virker...
Tusind tak...

I andre skal have mange tak for indsatsen, og philip, jeg har engang været ved at læse om .htaccess, men kun omkring bruger valideringer. Men kunne godt være man skulle studere det lidt nøjere, når tiden engang bliver dertil...
Avatar billede Slettet bruger
04. september 2006 - 23:02 #14
Mange tak - jeg har givet dig lidt karma philip, for den venlige opbakning :)
Avatar billede Slettet bruger
04. september 2006 - 23:56 #15
tak :)
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