httpd-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kevin Smith <ke...@netsmith.ltd.uk>
Subject Re: [users@httpd] Apache RewriteRule
Date Sat, 19 Nov 2005 18:32:12 GMT
Hi Joshua,

Thanks for the pointer! :) This is what made it work in the end, for 
anyone who wants to know.

RewriteRule ^/product_category/([0-9]+)\.html(.*)?      
/product_category.php?top_cat_id=$1&source=$2 [NC,QSA,L]

Regards,

Kevin

Joshua Slive wrote:
> On 11/19/05, Kevin Smith <kevin@netsmith.ltd.uk> wrote:
>   
>> Hi All,
>>
>> Wonder if someone can work this one outt, I'm a bit stumped.
>>
>> I have the following RewriteRule:
>>
>> RewriteRule ^/product_category/([0-9]+)\.html\?source\=(.*)
>> /product_category.php?top_cat_id=$1&source=$2
>>
>> This is meant to rewrite this URL:
>>     http://www.foobar.com/product_category/22.html?source=foobar
>>
>> Into this URL:
>>     http://www.foobar.com/product_category.php?top_cat_id=22&source=foobar
>>
>> However, it doesn't get the data after the source= parameter.
>>
>> It all works fine if I do this:
>>     RewriteRule ^/product_category/([0-9]+)
>> /product_category.php?top_cat_id=$1
>>
>> So, it seems there something no right trying retrieve parameters after
>> .html extension?
>>     
>
> If you look in the docs for RewriteRule, you'll see a special box
> discussing the query string.  It tells you that RewriteRule doesn't
> match against the query string.  You need a RewriteCond to do that. 
> In your particular case, it seems like all you want is to copy the
> query string to the new url and add something else.  In that case, the
> [QSA] options (for Query String Append) is all you need:
> RewriteRule ^/product_category/([0-9]+)\.html
> /product_category.php?top_cat_id=$1 [QSA]
>
> Joshua.
>
> ---------------------------------------------------------------------
> The official User-To-User support forum of the Apache HTTP Server Project.
> See <URL:http://httpd.apache.org/userslist.html> for more info.
> To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
>    "   from the digest: users-digest-unsubscribe@httpd.apache.org
> For additional commands, e-mail: users-help@httpd.apache.org
>
>   

Mime
View raw message