Raring Skrevet 21. april 2008 Skrevet 21. april 2008 Har nå en stund prøvd å få mod_rewrite til å funke, men til ingen nytte. .htaccess ser i skrivende stund slik ut: Options +FollowSymLinks RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/?$ /Site2/index.php?pg=$1&id=$2 [L,QSA] og som det kanskje kommer fram, vil jeg at URLen: /Site2/index.php?&pg=$1&id=$2 skal bli slik: /Site2/index/$1/$2/ Men hvis jeg nå prøver dette på siden min, gir hverken $_GET['$1'] eller $_GET['$2'] noe resultat. Kan dette være fordi jeg kjører på localhost eller har jeg gjort noe annet galt? PS: $1 og $2 er selvfølgelig bare eksempel-verdier
Lokaltog Skrevet 22. april 2008 Skrevet 22. april 2008 (endret) Prøv å bruke $_GET['pg'] og $_GET['id'], siden det er de GET-variablene du sender til scriptet. Edit: Ser at du bruker absolutte filbaner. Vær oppmerksom på at mod_rewrite vil lete etter /Site2/index.php fra root, og ikke relativ til filbanen til .htaccess-fila. Endret 22. april 2008 av Lokaltog
Raring Skrevet 22. april 2008 Forfatter Skrevet 22. april 2008 Selvfølgelig bruker jeg $_GET['pg'] og $_GET['id'] og /Site2 ligger i root. Hele adressen til index.php er http://localhost/Site2/index.php Noen flere tips? Kan det være at det ikke er inkludert i min installering av apache? Kjører MAc OS X Leopard og den installasjonen av apache som kommer standard med Leopard.
Lokaltog Skrevet 22. april 2008 Skrevet 22. april 2008 Hva får du opp hvis du kjører print_r($_GET) da?
Raring Skrevet 22. april 2008 Forfatter Skrevet 22. april 2008 http://localhost/Site2/index/mlt/a/ gir Array() hvilket indikerer at ingen av dem er satt... begynner å mistenke at en enkel skrivefeil et eler annet sted er grunnen til alt dette.
Lokaltog Skrevet 23. april 2008 Skrevet 23. april 2008 Prøv følgende: Legg .htaccess-fila i samme mappe som index.php, og endre rewriterule'n til: RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/?$ index.php?pg=$1&id=$2 [L,QSA]
Gjest Slettet+1298342134 Skrevet 24. april 2008 Skrevet 24. april 2008 Funker hos meg test her. Her er .htaccess filen: <IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+)/?$ /skogen/hw/index.php?pg=$1&id=$2 [L,QSA] </IfModule> Er du sikker på at modulen kjører på serveren din?
Raring Skrevet 24. april 2008 Forfatter Skrevet 24. april 2008 Er du sikker på at modulen kjører på serveren din? Nei, hvordan kan jeg teste dette?
Gjest Slettet+1298342134 Skrevet 24. april 2008 Skrevet 24. april 2008 Skift RewriteRule og se om du kommer til index.php når du skriver path til en mappe/fil som ikke finnes. RewriteRule . /index.php Kanskje står det i phpinfo() også, usikker:]
olemedkrutt Skrevet 17. juli 2008 Skrevet 17. juli 2008 RewriteEngine on RewriteBase / RewriteRule ^(.+)/([a-zA-Z0-9+-]+)/?$ /test/?page=$1&title=$2 Her vil localhost/article/om-microsoft gi meg rett artikkel. Men jeg ser at hvis $2 ikke er tilstede, feiler mod_rewrite. d.v.s. hvis jeg f.eks. går localhost/kontakt vil apache gi 404, og ikke /test/page=kontakt som jeg vil den skal gi. Hvordan løser jeg dette?
Thomas. Skrevet 17. juli 2008 Skrevet 17. juli 2008 (endret) Er du sikker på at modulen kjører på serveren din? Nei, hvordan kan jeg teste dette? Mener du hvordan se om mod_rewrite er slått på? Vis du har wamp: venstreklikk på ikonet ->apache -> apache modules -> rewrite_module Endret 17. juli 2008 av php_user
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå