I have this in my .htaccess :
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule . /index.php
and this is how i work with the parameters :
<?php
$request = $_SERVER['REQUEST_URI'];
$request = substr($request,1);
$params = explode('/', $request);
$safe_pages = array('page1','page2','page3');
if(in_array($params[0],$safe_pages))
{
include($params[0].'.php');
}else
{
include('404.php');
}
?>
Let’s say my site is : http://www.site.com
http://www.site.com/page -> works perfectly
http://www.site.com/page/parameter -> doesn’t load any css or images because it looks for them in root/page instead of root/
I tried to use absolute links for my css and images but it still didn’t work, so i guess the problem is in the .htaccess or i’m missing something.
The problem lies not within htaccess rewrite rules, but in your html – yuor links to static content (like css, images or scripts) should start with slash to be ralative to the domain. So instead of
Use
Other way is to use
basetag but it can break named anchors on your page