2012-02-08 21 views
1

如果有人打这样的网址:http://mydomain.com/action/login/uname/sudip/pass/md5(passwordrewiterule改变URL

怎么能在我的系统将其转换http://mydomain.com/index.php?action=login&uname=sudip&pass=md5(password)

请给出一个重写规则。

+0

为什么有url中的功能呢? – 2012-02-08 05:17:21

+0

我强烈建议不要在URL中传递密码(甚至没有散列!) – mark 2012-02-08 12:48:35

回答

2

非常简单。

RewriteEngine On 

RewriteBase /your/directory/path/ 

RewriteRule ^(.*)action/(.*)/uname/(.*)/pass/(.*)$ index\.php?action=$2&uname=$3&pass=$42%{QUERY_STRING} [L] 
+1

我认为这应该是这样的RewriteRule^action /(.*)/ uname /(.*)/pass/(.*)$ index \ .php?action = $ 2&uname = $ 3&pass = $ 42%{QUERY_STRING} [L] – 2012-02-08 06:27:11

0

将这个代码在.htaccess文件中DOCUMENT_ROOT目录:

Options +FollowSymLinks -MultiViews 
# Turn mod_rewrite on 
RewriteEngine On 

# your rewrite rule 
RewriteRule ^(action)/([^/]*)/(uname)/([^/]*)/(pass)/([^/]*)$ index.php?$1=$2&$3=$4&$5=$6 [L,QSA,NC]