Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I'm using mod_rewrite on my webpage to allow the proper handling of friendly URLs. It works perfectly in FF, Chrome, and Safari, yet in IE the friendly urls keep serving me up a 404 error (it's not handling the rewrite properly so it's showing as a 404).

Has anyone had any experience with this? And if so, how was it resolved?

Note: I have cleared my cache, cookies, and session and also restarted the browser. I am using IE 9, but have tried IE7 and 8 as well, using the developer tools, with no luck in any IE mode. Also something to note, is that IE can rewrite some pages, but for others it doesn't work.

Example
A user visits:

www.mysite.com/products/99-shoes.html

and the server will interpret and serve up the page from here:

www.mysite.com/product.php?id_product=99

Here is an example of the type of directive I'm using in my .htaccess:

<IfModule mod_rewrite.c>
# URL rewriting module activation
RewriteEngine on
RewriteRule ^products/([0-9]+)-[a-zA-Z0-9-]*.html /product.php?id_product=$1 [QSA,L]
</IfModule>

# Catch 404 errors
ErrorDocument 404 /404.php

Update: Extra Information
As requested, I have supplied my RewriteLog below. The first one is from when I access the page on Chrome (works correctly). The second one is what outputs when I access the page in IE. The page in question I am trying to load is: http://localhost/products-fb/10-loop.html. I have stripped out some of the repeated characters and timestamps to adhere to StackOverflow's 30k character limit. If you think I may have removed something important, please let me know and I can upload a .txt file for viewing instead.

Chrome Log Output

(2) init rewrite engine with requested uri /products-fb/10-loop.html
(1) pass through /products-fb/10-loop.html
(3) [perdir C:/www/] add path info postfix: C:/www/products-fb -> C:/www/products-fb/10-loop.html
(3) [perdir C:/www/] strip per-dir prefix: C:/www/products-fb/10-loop.html -> products-fb/10-loop.html
(3) [perdir C:/www/] applying pattern '^api/?(.*)$' to uri 'products-fb/10-loop.html'
(3) [perdir C:/www/] add path info postfix: C:/www/products-fb -> C:/www/products-fb/10-loop.html
(3) [perdir C:/www/] strip per-dir prefix: C:/www/products-fb/10-loop.html -> products-fb/10-loop.html
(3) [perdir C:/www/] applying pattern '^([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'products-fb/10-loop.html'
(3) [perdir C:/www/] add path info postfix: C:/www/products-fb -> C:/www/products-fb/10-loop.html
(3) [perdir C:/www/] strip per-dir prefix: C:/www/products-fb/10-loop.html -> products-fb/10-loop.html
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'products-fb/10-loop.html'
(3) [perdir C:/www/] add path info postfix: C:/www/products-fb -> C:/www/products-fb/10-loop.html
(3) [perdir C:/www/] strip per-dir prefix: C:/www/products-fb/10-loop.html -> products-fb/10-loop.html
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'products-fb/10-loop.html'
(3) [perdir C:/www/] add path info postfix: C:/www/products-fb -> C:/www/products-fb/10-loop.html
(3) [perdir C:/www/] strip per-dir prefix: C:/www/products-fb/10-loop.html -> products-fb/10-loop.html
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'products-fb/10-loop.html'
(3) [perdir C:/www/] add path info postfix: C:/www/products-fb -> C:/www/products-fb/10-loop.html
(3) [perdir C:/www/] strip per-dir prefix: C:/www/products-fb/10-loop.html -> products-fb/10-loop.html
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'products-fb/10-loop.html'
(3) [perdir C:/www/] add path info postfix: C:/www/products-fb -> C:/www/products-fb/10-loop.html
(3) [perdir C:/www/] strip per-dir prefix: C:/www/products-fb/10-loop.html -> products-fb/10-loop.html
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'products-fb/10-loop.html'
(3) [perdir C:/www/] add path info postfix: C:/www/products-fb -> C:/www/products-fb/10-loop.html
(3) [perdir C:/www/] strip per-dir prefix: C:/www/products-fb/10-loop.html -> products-fb/10-loop.html
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'products-fb/10-loop.html'
(3) [perdir C:/www/] add path info postfix: C:/www/products-fb -> C:/www/products-fb/10-loop.html
(3) [perdir C:/www/] strip per-dir prefix: C:/www/products-fb/10-loop.html -> products-fb/10-loop.html
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'products-fb/10-loop.html'
(3) [perdir C:/www/] add path info postfix: C:/www/products-fb -> C:/www/products-fb/10-loop.html
(3) [perdir C:/www/] strip per-dir prefix: C:/www/products-fb/10-loop.html -> products-fb/10-loop.html
(3) [perdir C:/www/] applying pattern '^c/([0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$' to uri 'products-fb/10-loop.html'
(3) [perdir C:/www/] add path info postfix: C:/www/products-fb -> C:/www/products-fb/10-loop.html
(3) [perdir C:/www/] strip per-dir prefix: C:/www/products-fb/10-loop.html -> products-fb/10-loop.html
(3) [perdir C:/www/] applying pattern '^c/([a-zA-Z-]+)/[a-zA-Z0-9-]+\.jpg$' to uri 'products-fb/10-loop.html'
(3) [perdir C:/www/] add path info postfix: C:/www/products-fb -> C:/www/products-fb/10-loop.html
(3) [perdir C:/www/] strip per-dir prefix: C:/www/products-fb/10-loop.html -> products-fb/10-loop.html
(3) [perdir C:/www/] applying pattern '^([0-9]+)\-[a-zA-Z0-9-]*\.html' to uri 'products-fb/10-loop.html'
(3) [perdir C:/www/] add path info postfix: C:/www/products-fb -> C:/www/products-fb/10-loop.html
(3) [perdir C:/www/] strip per-dir prefix: C:/www/products-fb/10-loop.html -> products-fb/10-loop.html
(3) [perdir C:/www/] applying pattern '^products-fb/([0-9]+)-[a-zA-Z0-9-]*.html' to uri 'products-fb/10-loop.html'
(2) [perdir C:/www/] rewrite 'products-fb/10-loop.html' -> '/product-fb.php?id_product=10'
(3) split uri=/product-fb.php?id_product=10 -> uri=/product-fb.php, args=id_product=10
(1) [perdir C:/www/] internal redirect with /product-fb.php [INTERNAL REDIRECT]
(2) init rewrite engine with requested uri /product-fb.php
(1) pass through /product-fb.php
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^api/?(.*)$' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^c/([0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^c/([a-zA-Z-]+)/[a-zA-Z0-9-]+\.jpg$' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)\-[a-zA-Z0-9-]*\.html' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^products-fb/([0-9]+)-[a-zA-Z0-9-]*.html' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)\-[a-zA-Z0-9-]*' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^[a-zA-Z0-9-]*/([0-9]+)\-[a-zA-Z0-9-]*\.html' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^products-fb/[a-zA-Z0-9-]*/([0-9]+)\-[a-zA-Z0-9-]*\.html' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)__([a-zA-Z0-9-]*)' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)_([a-zA-Z0-9-]*)' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^content/([0-9]+)\-([a-zA-Z0-9-]*)' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^content/category/([0-9]+)\-([a-zA-Z0-9-]*)' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$' to uri 'product-fb.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/product-fb.php -> product-fb.php
(3) [perdir C:/www/] applying pattern '^page-not-found$' to uri 'product-fb.php'
(1) [perdir C:/www/] pass through C:/www/product-fb.php
(2) init rewrite engine with requested uri /cart.php
(1) pass through /cart.php
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^api/?(.*)$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^c/([0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^c/([a-zA-Z-]+)/[a-zA-Z0-9-]+\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)\-[a-zA-Z0-9-]*\.html' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^products-fb/([0-9]+)-[a-zA-Z0-9-]*.html' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)\-[a-zA-Z0-9-]*' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^[a-zA-Z0-9-]*/([0-9]+)\-[a-zA-Z0-9-]*\.html' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^products-fb/[a-zA-Z0-9-]*/([0-9]+)\-[a-zA-Z0-9-]*\.html' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)__([a-zA-Z0-9-]*)' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)_([a-zA-Z0-9-]*)' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^content/([0-9]+)\-([a-zA-Z0-9-]*)' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^content/category/([0-9]+)\-([a-zA-Z0-9-]*)' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^page-not-found$' to uri 'cart.php'
(1) [perdir C:/www/] pass through C:/www/cart.php

IE Log Output

(2) init rewrite engine with requested uri /page-not-found
(1) pass through /page-not-found
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^api/?(.*)$' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^c/([0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^c/([a-zA-Z-]+)/[a-zA-Z0-9-]+\.jpg$' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^([0-9]+)\-[a-zA-Z0-9-]*\.html' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^products-fb/([0-9]+)-[a-zA-Z0-9-]*.html' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^([0-9]+)\-[a-zA-Z0-9-]*' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^[a-zA-Z0-9-]*/([0-9]+)\-[a-zA-Z0-9-]*\.html' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^products-fb/[a-zA-Z0-9-]*/([0-9]+)\-[a-zA-Z0-9-]*\.html' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^([0-9]+)__([a-zA-Z0-9-]*)' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^([0-9]+)_([a-zA-Z0-9-]*)' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^content/([0-9]+)\-([a-zA-Z0-9-]*)' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^content/category/([0-9]+)\-([a-zA-Z0-9-]*)' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^([0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$' to uri 'page-not-found'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/page-not-found -> page-not-found
(3) [perdir C:/www/] applying pattern '^page-not-found$' to uri 'page-not-found'
(2) [perdir C:/www/] rewrite 'page-not-found' -> '/404.php'
(1) [perdir C:/www/] internal redirect with /404.php [INTERNAL REDIRECT]
(2) init rewrite engine with requested uri /404.php
(1) pass through /404.php
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^api/?(.*)$' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^c/([0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^c/([a-zA-Z-]+)/[a-zA-Z0-9-]+\.jpg$' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)\-[a-zA-Z0-9-]*\.html' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^products-fb/([0-9]+)-[a-zA-Z0-9-]*.html' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)\-[a-zA-Z0-9-]*' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^[a-zA-Z0-9-]*/([0-9]+)\-[a-zA-Z0-9-]*\.html' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^products-fb/[a-zA-Z0-9-]*/([0-9]+)\-[a-zA-Z0-9-]*\.html' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)__([a-zA-Z0-9-]*)' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)_([a-zA-Z0-9-]*)' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^content/([0-9]+)\-([a-zA-Z0-9-]*)' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^content/category/([0-9]+)\-([a-zA-Z0-9-]*)' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^page-not-found$' to uri '404.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/404.php -> 404.php
(3) [perdir C:/www/] applying pattern '^address$' to uri '404.php'
(1) [perdir C:/www/] pass through C:/www/404.php
(2) init rewrite engine with requested uri /cart.php
(1) pass through /cart.php
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^api/?(.*)$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^c/([0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^c/([a-zA-Z-]+)/[a-zA-Z0-9-]+\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)\-[a-zA-Z0-9-]*\.html' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^products-fb/([0-9]+)-[a-zA-Z0-9-]*.html' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)\-[a-zA-Z0-9-]*' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^[a-zA-Z0-9-]*/([0-9]+)\-[a-zA-Z0-9-]*\.html' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^products-fb/[a-zA-Z0-9-]*/([0-9]+)\-[a-zA-Z0-9-]*\.html' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)__([a-zA-Z0-9-]*)' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)_([a-zA-Z0-9-]*)' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^content/([0-9]+)\-([a-zA-Z0-9-]*)' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^content/category/([0-9]+)\-([a-zA-Z0-9-]*)' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^([0-9]+)(\-[_a-zA-Z0-9-]*)/[_a-zA-Z0-9-]*\.jpg$' to uri 'cart.php'
(3) [perdir C:/www/] strip per-dir prefix: C:/www/cart.php -> cart.php
(3) [perdir C:/www/] applying pattern '^page-not-found$' to uri 'cart.php'
(1) [perdir C:/www/] pass through C:/www/cart.php
share|improve this question

2 Answers 2

This is a really interesting question.

May I ask you to add the rewritelog and the rewrite error in your question?

Here are my usual hints:

Please try to use the RewriteLog directive: it helps you to track down such problems:

# Trace:
# (!) file gets big quickly, remove in prod environments:
RewriteLog "/web/logs/mywebsite.rewrite.log"
RewriteLogLevel 9
RewriteEngine On

My favorite tool to check for regexp:

http://www.quanetic.com/Regex (don't forget to choose ereg(POSIX) instead of preg(PCRE)!)


May I ask you to add the rewritelog and the rewrite error in your question?

share|improve this answer
    
Thanks Olivier. I've included the outputs from the log file that was generated by adding that RewriteLog directive to the end of my httpd.conf file. –  justinl Dec 20 '11 at 21:11

After 2 days of frustration, the solution was not satisfactory and seems to be some bug in IE9. I used the developer tools panel and changed the Tools > Change User Agent String from "Default", to "Google Chrome". Then the page loaded fine. Once I set the User Agent String back to "Default", the page would still load fine. I really have no clue what or why it happened because I've never played around with those settings before, but I wanted to post it for anyone else who might suffer from this.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.