Rewrite URL
Hallo,
Ik weet dat je door middel van htaccess een URL kan herschrijven. Hoe herschrijf ik b.v. deze URL: http://domein.nl/index.php?page=info_page&name=home naar zoiets als
http://domein/info_page/home/
Is dat mogelijk of moet ik mijn PHP code helemaal aanpassen, zodat de URL anders opgebouwd wordt?
Ik weet dat je door middel van htaccess een URL kan herschrijven. Hoe herschrijf ik b.v. deze URL: http://domein.nl/index.php?page=info_page&name=home naar zoiets als
http://domein/info_page/home/
Is dat mogelijk of moet ik mijn PHP code helemaal aanpassen, zodat de URL anders opgebouwd wordt?
Hmm: Reactie 2x geplaatst :s
Gewijzigd op 23/06/2010 08:03:43 door Arjan -
sorry, had verkeerd gelezen. Mods verwijder dit even
Zou verdomd handig zijn dat je je eigen posts gedurende de eerst volgende 3 dagen zelf zou kunnen verwijderen
Zou verdomd handig zijn dat je je eigen posts gedurende de eerst volgende 3 dagen zelf zou kunnen verwijderen
Gewijzigd op 23/06/2010 10:02:55 door Moe BE
@ Arjen, wat zou dan de link dan moeten zijn met jouw code? De nieuwe URL bedoel ik dan
http://www.domein.nl/info_page/home zal doorverwijzen naar http://www.domein.nl/index.php?page=info_page&name=home
Dus precies wat jij in je voorbeeld hebt staan.
Dus precies wat jij in je voorbeeld hebt staan.
Gewijzigd op 23/06/2010 16:27:03 door Arjan -
Ik heb dit voorbeeld geprobeerd (refererend aan mijn topic), maar ik krijg het niet voor elkaar
om projecten?id=2 te rewriten naar projecten/2, ik gebruik het voorbeeld van jouw code Arjen:
om projecten?id=2 te rewriten naar projecten/2, ik gebruik het voorbeeld van jouw code Arjen:
Als het goed is wil je juist projecten/2 (onzichtbaar) doorverwijzen naar projecten.php?id=2 ....
Maar dit zal wel moeten werken. Je werkt niet toevallig op een Windows server? En heb je de htaccess in de webroot gezet (waar dus ook projecten.php staat als het goed is)?
Maar dit zal wel moeten werken. Je werkt niet toevallig op een Windows server? En heb je de htaccess in de webroot gezet (waar dus ook projecten.php staat als het goed is)?
Ik werk op MAMP, en hij staat inderdaad in dezelfde directory.
Even online geplaatst: http://environment.visual-masters.nl/opkoers/
Alleen de projectenpagina heeft de link in het menu, als je daarop klikt, zou
de URL eigen moeten worden vervormd naar /projecten/ maar in plaats daarvan staat
de file er gewoon (projecten.php).
Even online geplaatst: http://environment.visual-masters.nl/opkoers/
Alleen de projectenpagina heeft de link in het menu, als je daarop klikt, zou
de URL eigen moeten worden vervormd naar /projecten/ maar in plaats daarvan staat
de file er gewoon (projecten.php).
Gewijzigd op 23/06/2010 17:35:26 door Justin S
Je moet dan de link natuurlijk wel aanpassen. Je dient dan te verwijzen naar:
http://environment.visual-masters.nl/opkoers/projecten
of
http://environment.visual-masters.nl/opkoers/projecten/2 (en deze werkt zo te zien, echter zal je een absoluut pad moeten gebruiken voor je css bestand, aangezien projecten/2 als een directory wordt gezien)
http://environment.visual-masters.nl/opkoers/projecten
of
http://environment.visual-masters.nl/opkoers/projecten/2 (en deze werkt zo te zien, echter zal je een absoluut pad moeten gebruiken voor je css bestand, aangezien projecten/2 als een directory wordt gezien)
Code (php)
1
2
3
2
3
RewriteEngine on
RewriteRule ^projecten/(.*)$ projecten.php?id=$1 [L]
RewriteRule ^projecten$ projecten.php [L]
RewriteRule ^projecten/(.*)$ projecten.php?id=$1 [L]
RewriteRule ^projecten$ projecten.php [L]
Gewijzigd op 23/06/2010 19:12:09 door Arjan -
Ik ga het zometeen even proberen, alvast bedankt!
Ik heb nu dit:
En dat werkt niet.
Ik heb nu dit:
Code (php)
1
2
3
2
3
RewriteEngine on
RewriteRule ^http://environment.visual-masters.nl/opkoers/projecten/(.*)$ http://environment.visual-masters.nl/opkoers/projecten.php?id=$1 [L]
RewriteRule ^http://environment.visual-masters.nl/opkoers/projecten$ http://environment.visual-masters.nl/opkoers/projecten.php [L]
RewriteRule ^http://environment.visual-masters.nl/opkoers/projecten/(.*)$ http://environment.visual-masters.nl/opkoers/projecten.php?id=$1 [L]
RewriteRule ^http://environment.visual-masters.nl/opkoers/projecten$ http://environment.visual-masters.nl/opkoers/projecten.php [L]
En dat werkt niet.
Gewijzigd op 23/06/2010 19:37:47 door Justin S
is je mod_rewrite module wel geladen in apache?
Je kan dit checken door phpinfo() op je scherm te echoën.
En dan te kijken onder loaded modules, als hij hier niet tussen staat zal je deze eerst even moeten opzetten.
Je kan dit checken door phpinfo() op je scherm te echoën.
En dan te kijken onder loaded modules, als hij hier niet tussen staat zal je deze eerst even moeten opzetten.
Mod rewrite is geladen ja.
http://www.visual-masters.nl/info.php
http://www.visual-masters.nl/info.php
Hallo Arjen,
Er gaat toch iets niet helemaal lekker. de url werkt wel echter wordt er geen css geladen (lijkt het)
Als ik dan vervolgens naar http://domein.nl/includes/css/default.css ga kom ik op dezelfde pagina uit als b.v. naar http://domein.nl/info_page/home ga
Wat gaat er hier mis?
Er gaat toch iets niet helemaal lekker. de url werkt wel echter wordt er geen css geladen (lijkt het)
Als ik dan vervolgens naar http://domein.nl/includes/css/default.css ga kom ik op dezelfde pagina uit als b.v. naar http://domein.nl/info_page/home ga
Wat gaat er hier mis?
Dennis, werk jij samen (c.q. op hetzelfde domein) als die Justin?
Hi Karl Karl,
Nee hoor ik werk op
http://srv1.denniskallansee.nl/thecode/
Deze twee URLS:
http://srv1.denniskallansee.nl/thecode/index.php?page=info_page&name=Over%20IT-SL
http://srv1.denniskallansee.nl/thecode/includes/css/default.css
Komen op dezelfde pagina op 1 of andere manier wordt mijn CSS path ook gewijzigd ofzo? Of praat ik nu onzin
Nee hoor ik werk op
http://srv1.denniskallansee.nl/thecode/
Deze twee URLS:
http://srv1.denniskallansee.nl/thecode/index.php?page=info_page&name=Over%20IT-SL
http://srv1.denniskallansee.nl/thecode/includes/css/default.css
Komen op dezelfde pagina op 1 of andere manier wordt mijn CSS path ook gewijzigd ofzo? Of praat ik nu onzin
Oké, dan zit die Justin je topic te kapen vind ik.
Als ik naar die twee urls ga, dan kom ik gewoon op die pagina's terecht. Ik zie gewoon dat css bestand en ik zie die 'WAT kan IT-SL voor u doen?' pagina.
Als ik naar http://srv1.denniskallansee.nl/thecode/info_page/Over%20IT-SL ga, dan werkt het niet.
Als ik naar die twee urls ga, dan kom ik gewoon op die pagina's terecht. Ik zie gewoon dat css bestand en ik zie die 'WAT kan IT-SL voor u doen?' pagina.
Als ik naar http://srv1.denniskallansee.nl/thecode/info_page/Over%20IT-SL ga, dan werkt het niet.
Je moet van je CSS een absoluut path maken of een relatief pad.
Bijvoorbeeld: <link href="http://www.domein.nl/stylesheet/ditismijncsscode.css" rel="stylesheet" type="text/css" />
Dan moet de CSS in orde zijn.
Bijvoorbeeld: <link href="http://www.domein.nl/stylesheet/ditismijncsscode.css" rel="stylesheet" type="text/css" />
Dan moet de CSS in orde zijn.
Gebruik dit eens:
Code (php)
1
2
3
4
5
2
3
4
5
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/(.*)$ index.php?page=$1&name=$2 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/(.*)$ index.php?page=$1&name=$2 [L]
Gewijzigd op 23/06/2010 20:19:38 door Arjan -
Justin Streuper op 23/06/2010 20:16:32:
Je moet van je CSS een absoluut path maken of een relatief pad.
Goh, dat moet altijd.
Als je een relatieve path gebruikt, plaats dan wel een / voor de path.
Arjen, kan je ontdekken wat er in mijn situatie fout gaat? Ik moet geloof ik dat relatieve pad niet gebruiken, maar hij doet het op geen enkele manier...




