开发者

mod_rewrite Problem - Routing pages to query string

I need help with my mod_rewrite for a site im currently working on.

Let's say I have this site http://example.com

And I want to be able to make any value after the / to route to page.php like below

http://example.com/value1

http://example.com/value2

to point to

http://example.com/page.php?id=value1

http://example.com/page.php?id=value2

,respectively.

But, not route to th开发者_Python百科at page when im pointing to "admin"

http://example.com/admin/

I've tried

RewriteEngine on
RewriteCond $1 !^(admin)
RewriteRule ^(.*)$ /page.php?id=$1 [L]

But it isn't working. Any thoughts?


$1 is not available at the time of the Condition. I believe what you are looking for is close to:

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_URI} !^admin/.*
RewriteRule ^(.*)$ page.php?id=$1 [L]

this rule causes everything not starting with admin/ to go to /page.php. I don't believe the %{param} is optional. Using RewriteBase / means you do not to have prepend / on /admin and /page.php; it may actually fault if you use /page.php instead of page.php

If you have means of accessing the server values, then the final rule can be:

RewriteRule . page.php [L]

You can find the called url in the REQUEST_URI


This of any help?

.htaccess mod_rewrite - how to exclude directory from rewrite rule

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜