Avatar billede flol Nybegynder
14. oktober 2010 - 13:38 Der er 14 kommentarer og
1 løsning

.htassoc ændring af url

Hej.

Jeg vil gerne have en .htaccess som laver mine url's pæne så de ikke længere ser sådan ud:

http://b10test.dk/svane/index.php?menu=energiruder

men istedet sådan:

http://b10test.dk/svane/energiruder

Kan i hjælpe mig? og give en forklaring på hvad jeg skal skrive i min .htaccoss fil ?
Avatar billede showsource Seniormester
14. oktober 2010 - 14:20 #1
Avatar billede flol Nybegynder
14. oktober 2010 - 14:30 #2
Hej,
Har kigget lidt på siden og prøvet mig lidt frem.
Min htaccess fil ser nu sådan ud:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?menu=$1 [L]

Men jeg kan ikke få det til at virke?
Hvad gør jeg gal ?
Avatar billede showsource Seniormester
14. oktober 2010 - 14:39 #3
Er det din egen comp ?
Pr. default tillades brugen af .htaccess ikke i httpd.conf
Og modluet skal også loades ved opstart af apache.
Avatar billede flol Nybegynder
14. oktober 2010 - 14:39 #4
Undskyld..
Sådan ser min htaccess fil ud:

RewriteEngine on
RewriteRule ^(.+)$ index.php?menu=$1
Avatar billede flol Nybegynder
14. oktober 2010 - 14:53 #5
Har testet om det var fordi .htaccess ikke var tilladt, men det er det.

Hvis du skulle lave koden, hvordan vil den så se ud ?
Avatar billede showsource Seniormester
14. oktober 2010 - 15:00 #6
Ehh, jeg har selv brugt:


RewriteEngine on 

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([A-Za-z0-9]+)(/)?$ /index.php?id=$1
Avatar billede flol Nybegynder
14. oktober 2010 - 15:08 #7
Vil det sige hvis jeg skriver i min .htaccess fil:

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([A-Za-z0-9]+)(/)?$ /index.php?menu=$1

at mine url'er gerne skulle skifte, fra at så sådan ud:

http://b10test.dk/svane/index.php?menu=energiruder

til sådan:

http://b10test.dk/svane/energiruder
Avatar billede showsource Seniormester
14. oktober 2010 - 15:11 #8
Nix, fordi der bruges /index.php
D.v.s. index.php som ligger i roden af host.
Avatar billede flol Nybegynder
14. oktober 2010 - 15:20 #9
Hvordan vil det i mit tilfælge så se ud ?
:)
Avatar billede showsource Seniormester
14. oktober 2010 - 15:29 #10
Er det et dir du har ?
hvis du i dir'et "svanen" bruger:

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([A-Za-z0-9]+)(/)?$ index.php?menu=$1

burde det vist virke.
Hvis .htaccess ligger i rod af domain:

RewriteEngine on
RewriteBase /svanen/

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([A-Za-z0-9]+)(/)?$ index.php?menu=$1

Men det er lige nu utestet ! :O)
Avatar billede flol Nybegynder
14. oktober 2010 - 15:39 #11
Oooh nu virker det :)
næsten da.. ;O
for jeg har nogle filer med et "-" i eks:glarmester-randers.htm

og det giver fejl, så finder den ikke filen?
Avatar billede flol Nybegynder
14. oktober 2010 - 15:42 #12
Er også et problem der filer der indholder "_"
Avatar billede showsource Seniormester
14. oktober 2010 - 15:45 #13
Du lægger den blot ind i din "rule"
RewriteRule ^([A-Za-z0-9-]+)(/)?$ index.php?menu=$1
Avatar billede flol Nybegynder
14. oktober 2010 - 16:02 #14
Mange 1000 tak for hjælpen :)

Nu forstår jeg det også noget bedre..

Kast et svar, du har fortjent hver og 1 af de ponit jeg har sat det til.. ;D
Avatar billede showsource Seniormester
14. oktober 2010 - 16:10 #15
Ok.
Bemærk her at hvilke tegn som accepteres, er skrevet i din "rule" og ikke blot ALLE tegn.
Personligt holder jeg mig langt væk fra at bruge specialtegn i url.
F.eks. æ,ø og å, mellemrum m.v.
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
Kurser inden for grundlæggende programmering

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