Versio

mod_rewrite problem

Overzicht Reageren

Chi Lion

Chi Lion

04/11/2010 14:18:57
Quote Anchor link
Zie onderstaande code, denk dat duidelijk is wat ik wil, nu nog weten hoe:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
Options +Indexes
Options +FollowSymlinks
RewriteEngine on
RewriteBase /
RewriteRule ^([0-9a-z_]*)$ /index.php?page=$1&action=$2&sub=$3&id=$4


Heb deze tut al gebruikt, maar wordt er niet wijzer uit.
 
PHP hulp

PHP hulp

25/05/2012 05:59:11
Gesponsorde koppelingen:
BHosted Hosting al vanaf € 1,- per maand

Controleer nu gratis jouw domeinnaam:

  
 
Hertog Jan

Hertog Jan

04/11/2010 14:21:11
Quote Anchor link
Wat lukt er niet?... Wat probeer je? Wat is de bedoeling?
Gewijzigd op 04/11/2010 14:24:26 door Hertog Jan
 
Chi Lion

Chi Lion

04/11/2010 14:30:19
Quote Anchor link
Er wordt niks ge redirect.

Ik wil dat als ik zeg maar naar /customer/list/add/1 ga, dat dat dan dus gelinkt wordt aan
index.php?page=customer&action=list&sub=add&id=1

En, dat doettie dus niet
 
Tim Kampherbeek

Tim Kampherbeek

04/11/2010 15:56:24
Quote Anchor link
dan moet je regel eerder zoiets zijn:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
RewriteRule ^([0-9a-z_]*)/([0-9a-z_]*)/([0-9a-z_]*)/([0-9a-z_]*)$ /index.php?page=$1&action=$2&sub=$3&id=$4
 
Chi Lion

Chi Lion

05/11/2010 12:36:42
Quote Anchor link
Nope, nu doettie helemaal niks meer.
Als ik nu naar bijv /customer/ ga komt er al geen pagina meer voor.
 
Joren de Wit
Beheerder

Joren de Wit

05/11/2010 12:52:32
Quote Anchor link
Dat komt omdat je voor die url nog geen rewrite rule hebt. Je zult voor elk variabel aantal GET variabelen in je url een rewrite rule moeten opstellen. Dus voor:

- /customer/
- /customer/list/
- etc.

Krijg je allemaal verschillende rules. Begin met de langste url en zorg dat je de rule met de [L] flag afsluit (anders worden de andere rules ook nog uitgevoerd).
 
Chi Lion

Chi Lion

05/11/2010 12:54:42
Quote Anchor link
Dus, op deze manier?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
Options +Indexes
Options +FollowSymlinks
RewriteEngine on
RewriteBase /

RewriteRule ^([0-9a-z_]*)/([0-9a-z_]*)/([0-9a-z_]*)/([0-9a-z_]*)$ /index.php?page=$1&action=$2&sub=$3&id=$4 [L]
RewriteRule ^([0-9a-z_]*)/([0-9a-z_]*)/([0-9a-z_]*)        $ /index.php?page=$1&action=$2&sub=$3 [L]
RewriteRule ^([0-9a-z_]*)/([0-9a-z_]*)                $ /index.php?page=$1&action=$2 [L]
RewriteRule ^([0-9a-z_]*)                    $ /index.php?page=$1 [L]

RewriteCond %{REQUEST_URI}                                  !^/phpmyadmin/      
RewriteCond %{REQUEST_URI}                  !^/(stats|stats.*)/


Ik krijg dan namelijk een internal server error....
 
Joren de Wit
Beheerder

Joren de Wit

05/11/2010 12:56:03
Quote Anchor link
Die RewriteConds staan sowieso op de verkeerde plaats, die gaan altijd vooraf aan een (of meerdere) rewrite rules.
 
Chi Lion

Chi Lion

05/11/2010 13:11:24
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
Options +Indexes
Options +FollowSymlinks
RewriteEngine on
RewriteBase /

RewriteRule ^([0-9a-z_]*)/([0-9a-z_]*)/([0-9a-z_]*)/([0-9a-z_]*)$ /index.php?page=$1&action=$2&sub=$3&id=$4 [L]
RewriteRule ^([0-9a-z_]*)/([0-9a-z_]*)/([0-9a-z_]*)        $ /index.php?page=$1&action=$2&sub=$3 [L]
RewriteRule ^([0-9a-z_]*)/([0-9a-z_]*)                $ /index.php?page=$1&action=$2 [L]
RewriteRule ^([0-9a-z_]*)                    $ /index.php?page=$1 [L]


Krijg overal een 500 internal server error. Ook als ik niks achter de domeinzet dan .nl
 
Chris
Beheerder

Chris

05/11/2010 13:14:38
Quote Anchor link
Dan kijk je even naar de foutcode in je error log, zie je precies wat je fout doet :-)
 
Chi Lion

Chi Lion

05/11/2010 13:17:45
Quote Anchor link
Eh, errorlog? (A)
 



Overzicht Reageren