Toon posts:

[htaccess] mod_rewrite standaard url aangeven

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ben al een tijdje aan het experimenteren met mod_rewrite.
Ik heb iets als dit:
code:
1
2
3
RewriteEngine  on
RewriteRule    ^start/$ index.php?page=start
RewriteRule    ^nieuws/([0-9]+)/$  index.php?page=nieuws&id=$1


Als er nu nieuws/5/ wordt ingevoerd, wordt de gebruiker doorgestuurd naar index.php?page=nieuws&id=5. Dit werkt prima.
Maar als je handmatig index.php?page=nieuws&id=5 in de adresbalk typt opent ie de pagina ook. Nu wil ik dat alles wat ingetypt wordt en niet overeen komt met een RewriteRule gewoon naar index.php?page=start gaat. Is hier een enkele regel voor?

Verwijderd

Ik heb hier al eens iets over gelezen.

Ik weet alleen niet waar.

Het is iig op te lossen met een enkel regeltje

[ Voor 39% gewijzigd door Verwijderd op 21-04-2004 14:01 ]


  • bRight
  • Registratie: Juli 2000
  • Laatst online: 27-11-2024

bRight

digitaal

Als je dit als laatste regel toevoegt moet het werken toch?
De eerste rules zijn dan al toegepast.
code:
1
RewriteRule ^.*$ index.php?page=start [L,R]


correct me if I'm wrong..

[ Voor 3% gewijzigd door bRight op 21-04-2004 14:12 . Reden: tikfout :) ]


  • NMe
  • Registratie: Februari 2004
  • Nu online

NMe

Quia Ego Sic Dico.

bRight schreef op 21 april 2004 @ 14:04:
Als je dit als laatste regel toevoegd moet het werken toch?
De eerste rules zijn dan al toegepast.
code:
1
RewriteRule ^.*$ index.php?page=start [L,R]


correct me if I'm wrong..
Volgens mij kon dat inderdaad wel eens kloppen ja, ik las er toevallig gister ook wat over. :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


Verwijderd

Topicstarter
Heb het meteen even geprobeerd. Nu opent ie constant de error pagina van de server. Moet ik misschien nog een FLAG achter de voorgaande regels zetten oid ?

  • bRight
  • Registratie: Juli 2000
  • Laatst online: 27-11-2024

bRight

digitaal

Probeer anders eens zonder die R, dus zo:

code:
1
RewriteRule ^.*$ index.php?page=start [L]

Verwijderd

Topicstarter
bRight schreef op 21 april 2004 @ 14:17:
Probeer anders eens zonder die R, dus zo:

code:
1
RewriteRule ^.*$ index.php?page=start [L]
Had ik al geprobeerd, in dit geval opent ie altijd index.php?page=start maar dan zijn al mijn plaatjes foetsie. Hij luistert niet meer naar de voorgaande regels.

  • bRight
  • Registratie: Juli 2000
  • Laatst online: 27-11-2024

bRight

digitaal

Hij luistert wel naar naar de voorgaande regels, maar de urls van de plaatjes zelf worden uiteraard ook herschreven naar index.php?page=start ;)

Probeer dit eens:
code:
1
RewriteRule !\.(gif|jpg|png|css|swf)$ index.php?page=start [L]

Verwijderd

Topicstarter
In principe werkt het nu. Wat er ook wordt ingevoerd, hij sprint altijd naar index.php?page=start. Maar dit doet ie dan ook altijd, ook als er bijvoorbeeld www.hup.nl/nieuws/5/ wordt ingevuld terwijl dan gewoon naar index.php?page=nieuws&id=5 moet worden gegaan.

  • bRight
  • Registratie: Juli 2000
  • Laatst online: 27-11-2024

bRight

digitaal

even [L] flags toevoegen aan de rules erboven?

Verwijderd

Topicstarter
Nee, helaas niet, hij gaat nu sowieso naar index.php?page=start.

  • bRight
  • Registratie: Juli 2000
  • Laatst online: 27-11-2024

bRight

digitaal

dus zo?
code:
1
2
3
4
5
RewriteEngine  on

RewriteRule ^start/$ index.php?page=start [L]
RewriteRule ^nieuws/([0-9]+)/$  index.php?page=nieuws&id=$1 [L]
RewriteRule !\.(gif|jpg|png|css|swf)$ index.php?page=start [L]

  • sjoerdb2
  • Registratie: Juli 2001
  • Laatst online: 09-05-2025
het is dan geen antwoord op je vraag, maar je kunt ook eens kijken naar multiviews

Verwijderd

Topicstarter
Dat multiviews ben ik ook een aantal keren tegengekomen ja. Maar dan ga ik weer een heel ander systeem gebruiken.
bRight schreef op 21 april 2004 @ 17:04:
dus zo?
code:
1
2
3
4
5
RewriteEngine  on

RewriteRule ^start/$ index.php?page=start [L]
RewriteRule ^nieuws/([0-9]+)/$  index.php?page=nieuws&id=$1 [L]
RewriteRule !\.(gif|jpg|png|css|swf)$ index.php?page=start [L]
Zoals hierboven heb ik het nu precies staan, hij gaat sowieso naar index.php?page=start
Pagina: 1