[apache / mod_rewrite] *.php?page=12 -> page_12.html

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Suepahfly
  • Registratie: Juni 2001
  • Laatst online: 17-09 17:05
Ik heb een beetje aan het experimenteren met mod rewrite voor een gastenboek.

Nu heb ik het volgende in een .htacces staan
code:
1
2
3
RewriteEngine On
RewriteRule ^index.html index.php
RewriteRule ^page/([0-9]*).html index.html?page=$1


Als ik nu in de browser inde.html in type, dan krijg ik netje index.php
en als `page_09.html` intype dan wordt die ook netjes naar index.html?page=09 gelinkt.


Maar...
Hoe doe ik dit in de broncode?
Als ik
PHP:
1
print("<a href=\"index.php?page=".$page."\">pagina: ".$page."</a>\n";


Dan linkt ie gewoon naar index.php?page=nummer (dat staat dan ook in de adresballk.)

Nou kan ik dat gewoon veranderen naar
PHP:
1
print("<a href=\"page_".$page.".html\">pagina: ".$page."</a>\n");



Maar hoe moet dat dan als het op een server draait zonder mod_rewrite :?
Moet ik dan twee verschillende versies maken.

De URL rewriting Guide is hier niet echt duidelijk over, en de topics in de search ook niet.

Acties:
  • 0 Henk 'm!

Verwijderd

Misschien is het een idee om eerst te checken wat de "opvraag URL" was (de variabele naam in PHP ben ik eventjes kwijt, zie phpinfo();). Als dit bv. page_xx.html is weet je dat de rewrite engine werkt, anders niet.

[edit]
Maak bv een functie die de goede URL voor je genereerd met het paginanummer als argument. Redelijke fullproof oplossing lijkt me.. Succes!

[ Voor 28% gewijzigd door Verwijderd op 18-11-2003 11:38 ]