Avatar billede roz Nybegynder
05. december 2006 - 16:47 Der er 14 kommentarer og
1 løsning

Problem med pæne urls og .htaccess

Hejsa.
Er ved at lave "pæne" urls på et websted og til det ville jeg gerne bruge apaches mod_rewrite funktion. Fik at vide at en fil skulle sættes op som denne:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-F
RewriteRule ^/brugere/([A-Za-z0-9]+)$1 /index.php?p=$1
og derefter gemmes som .htaccess i mappen hvor man vil benytte det. Det har jeg gjort men det virker bare ikke. Altså den siger bare siden blev ikke fundet. Har tjekket at min host kører apache 2 server og fået af vide fra deres support at mod_rewrite er slået til. Nogen der kan hjælpe??
Avatar billede coderdk Praktikant
05. december 2006 - 17:54 #1
Avatar billede showsource Seniormester
05. december 2006 - 18:42 #2
Sorry for spam... ( men ved ikke hvordan jeg ellers skal "få fat i" coderdk, har prøvet coder.dk! )

coderdk, den artikel du har lavet her til exp, må jeg gengive den på en side jeg har gang i? ( phpbegynder.dk )
Selvf. med reference hertil exp og dit brugernavn
Avatar billede coderdk Praktikant
05. december 2006 - 19:32 #3
showsource, ehhe ok, ja der er jo ikke nogen kontaktmuligheder på exp... Du er velkommen til at gengive den med henvisning hertil :) Du må også gerne henvise til ordo.dk - Er siden nede, eller bare ikke oppe endnu?
Avatar billede showsource Seniormester
05. december 2006 - 19:38 #4
Den er er ikke oppe endnu.

Og takker mange gange, og vil selvf. også henvise til ordo.dk !!!
Avatar billede showsource Seniormester
05. december 2006 - 19:42 #5
what a what ???
Er du halvt grønlænder? Det er jeg også! :O)
Avatar billede roz Nybegynder
05. december 2006 - 19:42 #6
Har smidt den i samtlige "rødder" nu. Dog virker det stadig ikke. Siger fortsat bare siden kan ikke findes. Sagen er den at jeg har flere sider liggende så min ftp struktur ser ud sådan /www/example.com/index.php
Jeg har forsøgt at smide .htaccess både i / og i /www og i /www/example.com/.
Avatar billede showsource Seniormester
05. december 2006 - 20:42 #7

http://forums.devshed.com/apache-development-15/mod-rewrite-guide-common-requests-267522.html

example 5,

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} !-F 
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^(.+)/([^/]+)/([^/]+)$ $1?$2=$3 [QSA,E=TEST:$1]

RewriteCond %{ENV:TEST} ^(.+)/([^/]+)/([^/]+)$
RewriteRule ^.*$ %1?%2=%3 [QSA,E=TEST:%1,N]

RewriteCond %{ENV:TEST} ^([^/]+)/(.+)$ [OR]
RewriteCond %{REQUEST_URI} ^/([^/]+)/(.+)$
RewriteRule ^.*$ /index.php?%1=%2 [QSA,L]

Men den er nok lidt "overkill" for hvad du ønsker.


I index.php tester du så med $_GET

<?php

foreach($_GET as $key => $value) {
echo $key ." = ". $value ."<br />";

}
?>
Avatar billede showsource Seniormester
05. december 2006 - 20:43 #8
Og måske du ikke skal bruge index.php, men f.eks. brugere.php ???
Avatar billede coderdk Praktikant
05. december 2006 - 21:12 #9
Prøv lige:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-F
RewriteRule ^/brugere/([A-Za-z0-9]+)$ /index.php?p=$1

Hvis det ikke virker, KAN det være at din ISP ikke tillader rewrite? Prøv i roden at smide:

RewriteEngine On
RewriteBase /
RewriteCond {%REQUEST_FILENAME} !index.php
RewriteRule ^(.*?)$ /index.php?p=$1

Så skulle alle request kalde index.php

showsource, Cool :) Ja, jeg er ½ kalaaleq :) (fra Nuuk)
Avatar billede roz Nybegynder
05. december 2006 - 22:07 #10
Okay fik endelig den her til at virke:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-F
RewriteRule ^([^/]+)/([^/]+)/?$ index.php?p=$1&l=$2

Problemet er nu at alle mine links + billedestier tilføjer det man skriver (eks. example.com/smth/smthelse/ og så kommer den til at hente mine billeder derfra + alle mine links kommer til at hedde /smth/smthelse/index.php). Hvordan fikses dette?
Avatar billede coderdk Praktikant
05. december 2006 - 22:45 #11
Prøv lige den her:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-F
RewriteRule ^/brugere/([A-Za-z0-9]+)$ /index.php?p=$1

Den ligner din oprindelige, men "mangler" et 1
Avatar billede roz Nybegynder
05. december 2006 - 23:23 #12
Får fejl om at den ikke kan finde siden :/
Avatar billede roz Nybegynder
06. december 2006 - 16:51 #13
Ingen der har en ide om hvad problemet kan være? Eller kender en måde jeg kan få det til at virke på...
Avatar billede roz Nybegynder
06. december 2006 - 22:44 #14
Nå fandt selv ud af det til sidst...
Avatar billede showsource Seniormester
07. december 2006 - 06:06 #15
ehh, hvad var løsningen? :O)
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
Uanset kodesprog, så giver vi dig mulighederne for at udvikle det, du behøver.

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