mod_rewrite with multiple variables

2019-09-04 04:48发布

问题:

I have a URL like so:

http://localhost/deals/?search=fred that redirects to index.cfm?path=

When I use mod rewrite the URL parameter becomes

path = /deals/?search=fred

I currently have RewriteRule /(.*) /index.cfm?path=/$1 [L]

How can I split it so I can actually use the URL variable "search"?

I am using IIRF rewrite.

回答1:

This fixed my problem.

thanks

RewriteCond %{QUERY_STRING} ^$
RewriteRule ^/(.*)$ /index.cfm?path=$1 [L]
RewriteRule ^/(.*)\?(.*)$ /index.cfm?path=$1&$2 [L]


回答2:

RewriteRule ^/(.*)/(.*)$ /index.cfm?path=$1&search=$2 [L]

However if you just wanna continue with what you use then you can simply use

RewriteRule ^/(.*)[?](.*)$ /index.cfm?path=$1?$2 [L]

OR it should be there by itself in the get variables and u can access it by something like

search = GET["search"]