从nginx中的重写url获取变量

时间:2014-07-27 16:50:36

标签: php nginx rewrite

在我的conf文件中,我有这条规则:

rewrite ^/signup /register.php;
rewrite ^/signup/([0-9A-Z]+)$ /register.php?ref=$1;

访问site.com/signup时,一切正常 现在在我的php文件中,我有

if(isset($_GET['ref'])) {
$ref = $mysqli->real_escape_string($_GET['ref']); 
}

当我尝试从此网址获取变量ref时,网站http://signup/abc123什么都没显示! 是否有重写规则?

1 个答案:

答案 0 :(得分:1)

示例:

 if ( $uri ~ "^/signup$" ) {
 rewrite (.*)  /register.php;
}
if ( $uri ~ "^/signup/([0-9A-Za-z]*)$" ) {
  rewrite ^/signup/([0-9A-Za-z]*)$ /register.php?ref=$1;
}