Ik heb een website met een cms. De website is door mijzelf gemaakt,maar het cms door iemand anders. Nu zit er een fout in de manier waarop de htaccess wordt geschreven vanuit het cms voor de nette urls.
Er wordt voor iedere pagina een regel geschreven in de htaccess. Dat gaat allemaal netjes. Probleem komt nu wanneer er twee url's met hetzelfde begin. bijv www.pagina.nl/projecten en www.pagina.nl/projecten/project1
Wanneer de regel in de htaccess voor de eerst url eerst staat, dan pakt hij alleen deze. Ook wanneer je url 2 probeert te openen.
Oplossing zou zijn als de url's op volgorde van lengte in de htaccess weggeschreven zouden worden. Op die manier gaat het altijd goed. Weet iemand hoe ik dat zou kunnen doen ? Of is er misschien een andere oplossing ?
Hieronder een deel van de regels die zorgen voor de nieuwe htaccess:
$qp = "SELECT * FROM tbl_pages WHERE google_url != ''";
$rp = DBQuery("$qp");
while($sp = mysql_fetch_row($rp))
{
$page_id = $sp[0];
$google_url = $sp[23];
// openen nieuwe htaccess zodat we data kunnnen schrijven
$fp = fopen($filename,'a+');
fwrite($fp,"\nRewriteRule ^".$google_url." /php/index.php?page_id=".$page_id."");
Ik weet dat het systeem van het schrijven naar de htaccess niet ideaal is. Maar ik zit nu aan dit systeem vast en mijn kennis over php en htaccess is zeer beperkt. Dus als ik het bestaande systeem zou kunnen aanpassen zou ik al blij zijn.
Alvast bedankt
868 views