开发者

Url rewriting mod_rewrite

开发者 https://www.devze.com 2023-03-31 06:55 出处:网络
I have the url such as: page.开发者_如何学Pythoncom/content.php?xname=p&yname=q&zid=1 I want to rewrite this url using apache mod_rewrite into something like:

I have the url such as:

 page.开发者_如何学Pythoncom/content.php?xname=p&yname=q&zid=1

I want to rewrite this url using apache mod_rewrite into something like:

 page.com/p/q/

note there should not be 'zid' parameter in renamed url. I know expressions are passed as GET into the original url. Is it possible to rename as above. If yes, How to achieve this?


This one works fine for me and will rewrite request for /p/q/ to /content.php?xname=p&yname=q&zid=1.

Options +FollowSymLinks -MultiViews
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/([^/]+)/$ content.php?xname=$1&yname=$2&zid=1 [QSA,L]
  1. This rule is to be placed in .htaccess in website root folder. If placed elsewhere some small tweaking may be required.

  2. It will not rewrite if requested URL is a real file or folder (I'm sure you do not want to rewrite images or some other pages -- I had to add such condition since I do not know what is your website structure is).


RewriteRule   ^content\.php\?xname=(p)&yname=(q)&zid=1$    /$1/$2  [R]

Instead of p and q you can try expressions like [a-Z0-9_-]+ to match identifiers.

There's an online testing tool here: http://civilolydnad.se/projects/rewriterule/


RewriteEngine On
RewriteRule ^/[a-z0-9]+/[a-z0-9]+/$ content.php?xname=$1&yname=$2 [L]
0

精彩评论

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