Nginx重写规则指南

时间:2013-07-14 02:39:39

标签: nginx

我是NGINX反向代理解决方案的新手,它似乎很难理解所有的术语。我正在寻找如下解决方案。我真的很感激任何人帮助配置相同的。

我们有一个内部网络服务器,我们希望在WWW网站上发布,但不希望客户看到内部服务器URL。例如:

客户访问www.mycompany.com/track - > NGINX读取轨道,然后将URL重定向到内部server.com.au/tracker。我们不希望客户看到这个地址。

有什么建议吗?

干杯,

2 个答案:

答案 0 :(得分:2)

在这种情况下使用代理要好得多。重写适用于同一域中的URL或重定向客户端(将显示在URL中)。 试试这个:

location / {
    proxy_pass http://internal.example.com/;
    proxy_set_header Host $host;
}

答案 1 :(得分:0)

重写nginx与Apache完全相同:)语法各不相同。 当Apache使用RewriteRule时,nginx使用重写。我可以建议你这个参考http://wiki.nginx.org/HttpRewriteModule吗?检查2.4和2.5以获取特定于重写的文档。您将找到有关重写语法和重写选项的信息。

如果您只需要基本语法,可以从上面快速举例:

rewrite  ^(/download/.*)/media/(.*)\..*$  $1/mp3/$2.mp3  break;

顺便说一句,如果您想从示例中学习,可以使用此工具将Apache .htaccess文件转换为nginx配置:http://winginx.com/htaccess