mod rewrite probleempje
Beste mensen,
Ik heb de volgende url:
http://domein.nl/vacatures/
Nu heb ik op die pagina allemaal vacatures staan. Je voelt hem misschien al aankomen, maar hoe kan ik zo'n url omzetten:
http://domein.nl/vacature_detail.php?seo_url=dit-is-de-seo-url-van-die-pagina
naar:
http://domein.nl/vacatures/dit-is-de-seo-url-van-die-pagina
*EDIT nu ik dit zo zie denk ik dat het ook niet heel veilig is? Normaal gesproken zou ik http://domein.nl/vacature_detail.php?id=1 doen, maar als ik dat doe dan word het waarschijnlijk zoiets:
http://domein.nl/vacatures/1
en eigenlijk wil ik wel een seo url getoond hebben vandaar dat ik een unieke seo_url introduceer in plaats van een uniek id. Is dit slim? Moet dit anders?
Ik heb de volgende url:
http://domein.nl/vacatures/
Nu heb ik op die pagina allemaal vacatures staan. Je voelt hem misschien al aankomen, maar hoe kan ik zo'n url omzetten:
http://domein.nl/vacature_detail.php?seo_url=dit-is-de-seo-url-van-die-pagina
naar:
http://domein.nl/vacatures/dit-is-de-seo-url-van-die-pagina
*EDIT nu ik dit zo zie denk ik dat het ook niet heel veilig is? Normaal gesproken zou ik http://domein.nl/vacature_detail.php?id=1 doen, maar als ik dat doe dan word het waarschijnlijk zoiets:
http://domein.nl/vacatures/1
en eigenlijk wil ik wel een seo url getoond hebben vandaar dat ik een unieke seo_url introduceer in plaats van een uniek id. Is dit slim? Moet dit anders?
Gewijzigd op 05/10/2012 15:54:27 door Pong Zor
http://domein.nl/vacatures/dit-is-de-seo-url-van-die-pagina/2384
Doet phphulp ook.
Het tekst-gedeelte staat wel in de URL, maar daar doe je dus niets mee.
Dit zou hetzelfde resultaat geven:
http://domein.nl/vacatures/wat_een_onzinnige_boel_en_niet_te_faken/2384
Doet phphulp ook.
Het tekst-gedeelte staat wel in de URL, maar daar doe je dus niets mee.
Dit zou hetzelfde resultaat geven:
http://domein.nl/vacatures/wat_een_onzinnige_boel_en_niet_te_faken/2384
http://www.phphulp.nl/php/forum/topic/mod-rewrite-probleempje/86965/
daarvan is het getal: 86965 het id zeg maar, deze heb je wel nodig om de pagina op te zoeken, maar niet nodig voor je seo url.
mod-rewrite-probleempje is dan de seo_url die in de database staat opgeslagen denk ik?
Hoe zou ik dat in mijn geval moeten implementeren om van:
http://domein.nl/vacature_detail.php?seo_url=dit-is-de-seo-url-van-die-pagina
dit:
http://domein.nl/vacatures/dit-is-de-seo-url-van-die-pagina
even los gezien van het ID dat ik nu niet mee stuur
daarvan is het getal: 86965 het id zeg maar, deze heb je wel nodig om de pagina op te zoeken, maar niet nodig voor je seo url.
mod-rewrite-probleempje is dan de seo_url die in de database staat opgeslagen denk ik?
Hoe zou ik dat in mijn geval moeten implementeren om van:
http://domein.nl/vacature_detail.php?seo_url=dit-is-de-seo-url-van-die-pagina
dit:
http://domein.nl/vacatures/dit-is-de-seo-url-van-die-pagina
even los gezien van het ID dat ik nu niet mee stuur
(EDIT: hier stond nog geen reply)
Bekijk dit eens
http://www.phphulp.nl/php/tutorial/overig/url-vriendelijkheid-seo/691/
Wat die veiligheid betreft ...
Twee dingen:
- haal die waarde door een functie die URL-vriendelijke waarden aflevert.
bv. urlencode
- De waarde moet uniek zijn. Je zorgt voor een veld in de (DB) tabel waar je die waarde invult. Zet dat veld dan ook als UNIQUE.
Dan moet je functionaliteit hebben die controleert of een waarde al bestaat; indien wel, voeg je iets toe
bv.
http://domein.nl/vacatures/bakker+gevraagd
->
http://domein.nl/vacatures/bakker+gevraagd+2
Bekijk dit eens
http://www.phphulp.nl/php/tutorial/overig/url-vriendelijkheid-seo/691/
Wat die veiligheid betreft ...
Twee dingen:
- haal die waarde door een functie die URL-vriendelijke waarden aflevert.
bv. urlencode
- De waarde moet uniek zijn. Je zorgt voor een veld in de (DB) tabel waar je die waarde invult. Zet dat veld dan ook als UNIQUE.
Dan moet je functionaliteit hebben die controleert of een waarde al bestaat; indien wel, voeg je iets toe
bv.
http://domein.nl/vacatures/bakker+gevraagd
->
http://domein.nl/vacatures/bakker+gevraagd+2
Gewijzigd op 05/10/2012 16:12:25 door Kris Peeters
Kris, ja ik controleer wel of het uniek is dus dat zit opzich goed, nu alleen dit nog:
vacatures.php?seo_url=test
moet worden vacatures/test
Maar dit schijnt niet te werken:
RewriteRule ^vacatures/([^/\.]+)/?$ vacatures.php?seo_url=$1 [L]
vacatures.php?seo_url=test
moet worden vacatures/test
Maar dit schijnt niet te werken:
RewriteRule ^vacatures/([^/\.]+)/?$ vacatures.php?seo_url=$1 [L]
Oke nieuw idee:
Ik wil graag de volgende url opbouwen:
http://www.domeinnaam.nl/maakt-niet/wat-hier-staat/of-hoeveel/slashes-er-zijn/als-het-laatste-getal-maar-klopt/100
100 is in dit geval het pagina id en de rest is gewoon een leuke seo url.
Wat ik geprobeerd heb is het volgende:
RewriteRule (.*)/$ index.php?pagina_id=$1
Dat werkt dan voor: 1/vacatures/homepage/
In principe na de 1/ maakt het niet meer uit wat je hier neer zet. Niet zo netjes maar het werkt wel, want ik controleer op pagina_id en dat is 1 in dit geval.
Wat me meer zorgen baad is het volgende: als ik de $_GET uit lees dan zie ik:
Array ( [pagina_id] => 1/vacatures/homepage )
Dit is natuurlijk geen pagina_id meer. Hoe kan ik dit netjes oplossen?
Ik wil graag de volgende url opbouwen:
http://www.domeinnaam.nl/maakt-niet/wat-hier-staat/of-hoeveel/slashes-er-zijn/als-het-laatste-getal-maar-klopt/100
100 is in dit geval het pagina id en de rest is gewoon een leuke seo url.
Wat ik geprobeerd heb is het volgende:
RewriteRule (.*)/$ index.php?pagina_id=$1
Dat werkt dan voor: 1/vacatures/homepage/
In principe na de 1/ maakt het niet meer uit wat je hier neer zet. Niet zo netjes maar het werkt wel, want ik controleer op pagina_id en dat is 1 in dit geval.
Wat me meer zorgen baad is het volgende: als ik de $_GET uit lees dan zie ik:
Array ( [pagina_id] => 1/vacatures/homepage )
Dit is natuurlijk geen pagina_id meer. Hoe kan ik dit netjes oplossen?
Gewijzigd op 09/10/2012 10:29:56 door Pong Zor
Ook opgelost




