【问题标题】:nginx rewrite location rulenginx重写位置规则
【发布时间】:2016-05-30 13:01:15
【问题描述】:

我在 mamp 上的原始网址是 http://localhost:7888/tosfund/view-project.php?pid=2 我想用 nginx 把它改写成 http://localhost:7888/tosfund/view/project/2 这样的东西。

我的位置也有问题,所以下面是我的重写块。

location /tosfund/view-project.php {
    rewrite ^/view/project/(.*)$ /view-project.php?id=$2 last;
}

对此有何建议?

【问题讨论】:

  • 对不起,我错误地编辑了你的重写代码而不是我的。我也更新了我的答案。

标签: php nginx rewrite


【解决方案1】:

您的逻辑是正确的,但代码不正确: 最后的$2 应该始终是$1,因为你只有一个正则表达式。

此外,重写应该在目录(通常)或根目录上进行。 所以基本上,这应该有效:

location / {
    rewrite "^/view/project/(.*)" /view-project.php?id=$1;
}

【讨论】:

  • 你要改成location / {而不是location /tosfund/view-project.php {而且你还有其他重写规则吗?
  • 嗨@peixotorms!我现在知道了。我在 location / { 中使用了它,并且我有完整的路径让它工作。你能告诉我这个怎么用吗? rewrite ^/tosfund.com/update/organization(.*)$ /tosfund.com/action.php?id=update-organization;
猜你喜欢
  • 2018-12-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多