Avatar billede phpmanden Nybegynder
18. maj 2006 - 19:06 Der er 16 kommentarer og
1 løsning

ændre links på apache server

Hej eksperter, jeg har nogle links der ser sådan her ud nu, og dem vil jeg gerne ændre:

NU www.site.com/index.php?kat=produkt&id=100

TIL www.site.com/gucci-taske/produkt/100/gucci-taske.html

gucci-taske & gucci-taske.html bestemmer ikke hvilket indhold der skal hentes frem, men er blot for er vise hvad der gemmer sig bag linket
Avatar billede hmortensen Nybegynder
18. maj 2006 - 20:39 #1
Du kan lave en htaccess fil med flg.:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-F
RewriteRule ^[a-z-]+/([a-z]+)/([0-9]+)/[a-z-]+.html index.php?kat=$1&id=$2

Hvis der gerne må fremkomme store bogstaver også, skal sidste linie være:
RewriteRule ^[a-z-]+/([a-z]+)/([0-9]+)/[a-z-]+.html index.php?kat=$1&id=$2 [nc]
Avatar billede phpmanden Nybegynder
19. maj 2006 - 09:28 #2
Jeg kan ikke få det til at virke :(

sådan har jeg lavet den

RewriteRule ^([a-z0-9-]+)/([a-z0-9]+)/([0-9]+)+.html /index.php?titel=$1&m=$2&id=$3

men det virker ikke ?
Avatar billede hmortensen Nybegynder
19. maj 2006 - 09:31 #3
Hvordan ser dit link ud så?
For dit eget pattern passer ikke til det link du har skrevet i spørgsmålet.
Avatar billede phpmanden Nybegynder
19. maj 2006 - 09:39 #4
RewriteRule ^[a-z0-9-]+/([a-z]+)/([0-9]+)/[a-z0-9-]+.html index.php?kat=$1&id=$2

fik det til at virke skulle bare tænke mig lidt om :) smid svar

betyder ( ) at det er dem som er kat og id ?
Avatar billede hmortensen Nybegynder
19. maj 2006 - 09:41 #5
Det der står i () er det der trækkes ud af strengen.
Husk [nc] hvis det også skal virke med store bogstaver.
Avatar billede phpmanden Nybegynder
19. maj 2006 - 09:44 #6
man kan ikke lave en i samme der hedder:

RewriteRule ^[a-z0-9-]+/([a-z]+)/([0-9]+)/[a-z0-9-]+.html index.php?kat=$1&kid=$2

altså hvor streng 2 hedder kid ?
Avatar billede hmortensen Nybegynder
19. maj 2006 - 09:47 #7
Forstår ikke dit sidste spørgsmål.
Avatar billede phpmanden Nybegynder
19. maj 2006 - 09:50 #8
det er fordi jeg har også et link der hedder

www.site.com/index.php?m=produkter&kid=10

det skulle skrives om til

www.site.com/produkter/10/tasker.html

men det er måske sådan her:

RewriteRule ^produkter/([0-9]+)/[a-z0-9-]+.html index.php?m=$1&kid=$2
Avatar billede hmortensen Nybegynder
19. maj 2006 - 09:51 #9
Nok nærmere sådan her.
RewriteRule ^([a-z]+)/([0-9]+)/[a-z0-9-]+.html index.php?m=$1&kid=$2
Avatar billede phpmanden Nybegynder
19. maj 2006 - 09:54 #10
TAK!
Avatar billede hmortensen Nybegynder
19. maj 2006 - 09:54 #11
Det var så lidt.
Avatar billede phpmanden Nybegynder
19. maj 2006 - 11:02 #12
lige et tillægs sprøgsmål, kan du se der er noget galt med denne:

RewriteRule ^([a-z]+)/([0-9-]+)/[a-z0-9-]+.html index.php?m=$1&newsid=$2 ?
Avatar billede phpmanden Nybegynder
19. maj 2006 - 11:23 #13
det virker nu ;)
Avatar billede phpmanden Nybegynder
19. maj 2006 - 17:56 #14
nu er et nyt problem opstået

jeg lavede sådan jeg kunne gøre sådan her: www.site.com/produkter/tasker.html
med denne RewriteRule ^([a-z0-9-]+)/[a-z0-9-]+.html index.php?m=$1 og det virker også fint MEN MEN

jeg har en rigtig sti der hedder

www.site.com/statestik/index.html

og den eksistere fysisk og den kan jeg ikke få adgang til nu ? nu viser den bare www.site.com/statestik/index.html men det er jo ikke den rigtige hvis du forstår ?
Avatar billede hmortensen Nybegynder
19. maj 2006 - 21:42 #15
Har du den her linie med ?
RewriteCond %{REQUEST_FILENAME} !-F
Avatar billede phpmanden Nybegynder
19. maj 2006 - 22:02 #16
Ja denne er i min fil RewriteCond %{REQUEST_FILENAME} !-F

+

så har jeg også denne her fra gammel tid

RewriteCond %{REQUEST_FILENAME} !produkter/([0-9]) men jeg ved ikke hvad den gør ?
Avatar billede phpmanden Nybegynder
20. maj 2006 - 19:57 #17
har oprettet et nyt spørgsmål her: http://www.eksperten.dk/spm/710724
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