Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services nginx本地主机反向代理_Amazon Web Services_Nginx_Reverse Proxy_Nginx Reverse Proxy - Fatal编程技术网

Amazon web services nginx本地主机反向代理

Amazon web services nginx本地主机反向代理,amazon-web-services,nginx,reverse-proxy,nginx-reverse-proxy,Amazon Web Services,Nginx,Reverse Proxy,Nginx Reverse Proxy,我的应用程序运行在AWS EC2实例的localhost:8080上 为了使用这些Web门户,我在EC2上安装了nginx,并反转了代理localhost,以便在浏览器上访问Web UI Nginx.conf文件 server { listen 80; server_name ec2-xx-xx-xxx-xxx.eu-central-1.compute.amazonaws.com; location / { proxy_pass http://localhost

我的应用程序运行在AWS EC2实例的localhost:8080上

为了使用这些Web门户,我在EC2上安装了nginx,并反转了代理localhost,以便在浏览器上访问Web UI

Nginx.conf文件

server {
    listen 80;
    server_name ec2-xx-xx-xxx-xxx.eu-central-1.compute.amazonaws.com;

    location / {
    proxy_pass http://localhost:8080;

   location /$request_uri {
   proxy_pass http://localhost$request_uri;

} 

}
在我的浏览器上点击EC2 URL时,我成功地看到了应用程序的主页

但当我点击任何url(比如/admin)时,Nginx会重定向到本地计算机的本地主机:8080/admin而不是服务器的本地主机。 我想要的是,当点击任何url时,nginx应该将请求转发到localhost:8080{$url},并将浏览器返回给我

请指出我错在哪里。
提前感谢。

您不需要添加第二个位置

location / {
    proxy_pass http://localhost:8080;
    proxy_set_header   Host $http_host;
    proxy_set_header   X-Real-IP $remote_addr;
    proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header   X-Forwarded-Proto $scheme;
}

这应该足以访问您需要的任何内容。

第二条规则中缺少localhost的正斜杠。所以“http://localhost”,而不是http:localhost。我这样做了,但得到了相同的问题使用location/admin,您可能必须将其置于location/rule之上。我想你的第一条规则是你要找的通配符。它将所有内容传递给localhost。