Reputation: 2846
I am trying to turn my blog URLs into a more SEO friendly format using mod_rewrite. All of my articles are stored in a simple MySQL database. Each blog article url looks like this:
http://www.test.com/blog?id=20&category=online%20php%20tutorials&pagename=how%20to%20customize%20functions
I have managed to to make them look like this using mod_rewrite:
http://www.test.com/blog/online-php-tutorials/how-to-customize-functions/20
Here is my code that I paced in my .htaccess file:
RewriteRule ^blog/([a-z0-9\-]+)/([a-z0-9\-]+)/([a-z0-9\-]+)/?$ /blog?id=$3&category=$1&pagename=$2 [L]
So what happens is this: When I click on the URL http://www.test.com/blog/online-php-tutorials/how-to-customize-functions/20
, all of my CSS and images are not loading because it is trying to load them from a directory that does not actually exists. How would I load the files without having to create multiple directories that contain my sites CSS files and images?
Upvotes: 0
Views: 242
Reputation: 7315
You will want your CSS paths to be based on the root of your domain. If your CSS file is at http://example.com/includes/style.css
, you should use /includes/style.css
to include that file instead of includes/style.css
.
Upvotes: 0
Reputation: 79021
Use root identifier /
in your path. This will point the DocumentRoot of your server. Let me explain How this works
For an image like this:
<img src='test.jpg' />
Browser/Server will find it as http://www.test.com/blog/online-php-tutorials/how-to-customize-functions/20/test.jpg'
but if you use /
before the path
<img src='/test.jpg' />
It will look for it in http://www.test.com/test.jpg
Use full path in your files like:
<img src='http://test.com/test.jpg' />
Upvotes: 2