【问题标题】:Nginx: how to do rewrite?Nginx:如何重写?
【发布时间】:2015-03-09 19:52:03
【问题描述】:

我的网站有三个不同的页面:

www.abc.com/
www.abc.com/node
www.abc.com/memeber

如果我在浏览器中输入www.abc.com,它会转到www.abc.com/,当我输入www.abc.com时如何将其更改为www.abc.com/node并保持www.abc.com/memeber正常?

【问题讨论】:

  • 您希望根 url www.abc.com 重定向/node ?
  • @MohammadAbuShady 是的,但是像往常一样访问 www.abc.com/memeber。
  • 我的问题解决了!谢谢大家!

标签: apache web nginx


【解决方案1】:

只是添加一个小注释,使用return 而不是rewrite 进行重定向,check nginx pitfalls

location = / {
  return 301 $scheme://$server_name/node
}
location / {
  # normal location handling, using try_files for example
}

【讨论】:

    【解决方案2】:

    如果我只提供静态文件,以下对我有用。

    server {
        listen 80;
        server_name www.abc.com;
        root /var/www/abc;
    
        if ($request_uri = '/') {
            rewrite ^ /node break;
        }
    }
    

    【讨论】:

      【解决方案3】:
      location = / {
        rewrite ^ /node;
      }
      

      【讨论】:

        猜你喜欢
        • 2017-10-15
        • 2011-05-18
        • 2019-01-24
        • 2015-12-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多