[mod_rewrite]Werkt uberhaupt niet?

Pagina: 1
Acties:

  • MindStorm
  • Registratie: Juli 2002
  • Laatst online: 16-01-2024
Ik ben een beetje aan het experimenteren met mod_rewrite. Heb een begrijpelijke tutorial gevonden die ongeveer doet wat ik wil: http://www.workingwith.me.uk/...

Mijn .htaccess bestaat uit het volgende:
code:
1
2
3
4
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^/testmij/page/([^/\.]+)/?$ index.php?page=$1 [L]
</IfModule>


Wanneer ik vervolgens naar de betreffende url ga, zonder enige toevoeging, krijg ik wel de goed pagina (index.php). Volgens het voorbeeld zou /page/software omgezet worden in index.php?page=software. Helaas was dit niet het geval. Volgens diverse sites kan dit worden veroorzaakt door het niet mogen overriden in .htaccess. Na het veranderen van AllowOverride None in All gebeurde er echter nog steeds niets...

Zelfs dit werkt niet:
code:
1
RewriteRule ^/testmij/index.html    test.php


Ik weet even niet meer waar ik het moet zoeken...heeft iemand enig idee of dit aan mij ligt, of aan de server?

  • elevator
  • Registratie: December 2001
  • Niet online

elevator

Officieel moto fan :)

Volgens mij kan je in de .htaccess file geen <IfModule mod_rewrite.c> gebruiken - dus laat die eens weg?

Kijk anders eens in je Error.log file om te zien wat daar voor foutmeldingen in staan? :)

  • mithras
  • Registratie: Maart 2003
  • Niet online
Wat betreft die 1e: die IfModule werkt volgens mij niet.
Wat betreft die 2e: je moet wel je RewriteEngine aanzetten.

Als je dit doet moet het al (beter) werken:
code:
1
2
RewriteEngine on
RewriteRule ^/testmij/page/([^/\.]+)/?$ index.php?page=$1 [L]

  • MindStorm
  • Registratie: Juli 2002
  • Laatst online: 16-01-2024
elevator schreef op zaterdag 04 november 2006 @ 11:04:
Volgens mij kan je in de .htaccess file geen <IfModule mod_rewrite.c> gebruiken - dus laat die eens weg?

Kijk anders eens in je Error.log file om te zien wat daar voor foutmeldingen in staan? :)
Zonder de IfModule werkt ie helaas ook niet :( In het error_log staat het volgende:

code:
1
[Tue Nov 07 18:00:55 2006] [error] [client 192.168.2.1] File does not exist: /var/www/localhost/htdocs/page


ps. Deze bovenstaande error is overigens met de suggestie van mitras86

[ Voor 0% gewijzigd door MindStorm op 07-11-2006 18:07 . Reden: naam toegevoegd ]


Verwijderd

elevator schreef op zaterdag 04 november 2006 @ 11:04:
Volgens mij kan je in de .htaccess file geen <IfModule mod_rewrite.c> gebruiken - dus laat die eens weg?
Dat moet niet uitmaken, IfModule mag gewoon in een .htaccess. Sowieso kun je die overal gebruiken. Sterker nog, het is netter om het gewoon zo te doen, zeker als je met verschillende servers te maken krijgt.

Maar anyway, worden de .htaccess bestanden uberhaupt wel gelezen? Zet er eens iets in dat en syntax erro moet opleveren en kijk of je een 500 error krijgt. Zo niet, dan laat AllowOverride het niet toe om met .htaccess bestanden directives aan te passen of toe te voegen. Maak er eens AllowOverride All van in httpd.conf (alleen voor de webroot).

[ Voor 28% gewijzigd door Verwijderd op 07-11-2006 19:00 ]


  • MindStorm
  • Registratie: Juli 2002
  • Laatst online: 16-01-2024
Een 500 krijg ik niet, dat zou als het goed is gewoon moeten gebeuren met een niet goed afgesloten RewriteRule?


Ik heb de volgende regel in mn httpd.conf aangepast:
code:
1
2
3
4
<Directory />
    Options FollowSymLinks
    AllowOverride All
</Directory>


En alles verplaatst naar de webroot, zodat dit zou moeten werken:

code:
1
2
3
4
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^/page/([^/\.]+)/?$ index.php?page=$1 [L]
</IfModule>


Maar met of zonder IfModule gebeurt er niets :(

[ Voor 32% gewijzigd door MindStorm op 08-11-2006 14:12 ]

Pagina: 1