我有这个位置元素:
location ~* ^/publicapp {
proxy_pass https://myserver.domain.local;
}
服务器myserver.domain.local托管位于/ myapp下的Web应用程序。 我想通过https://www.mywebsite.com/publicapp公开发布。如何告诉nginx将/ myapp翻译为/ publicapp? 请记住,我使用〜*来允许不区分大小写。因此,我不能使用带有proxy_pass的URI。
亲切的问候, 凯文
答案 0 :(得分:0)
试试这个:
location ~* /publicapp/ {
rewrite ^/publicapp/(.*)$ /myapp/$1 break;
proxy_pass https://myserver.domain.local;
}
这将重写您的路径并在.local服务器上使用新路径。
答案 1 :(得分:0)
使用
rewrite ^/publicapp/(.*) /myapp/$1 break;
至少它与我非常简单的应用程序有关。 现在我必须弄清楚如何进行正确的链接转换(抱歉使用ISA Server / TMG术语,不知道它是否在nginx中相同)。
感谢pythagor: - )
修改:
仅当我在浏览器(https://www.mywebsite.com/publicapp/)中的网址后面留下一个斜杠时才有效。
另一个编辑:
确保网址以斜杠结尾:
rewrite ^([^.]*[^/])$ $1/ permanent;
取自:here(第一个答案)