问题标签 [nginx-reverse-proxy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
475 浏览

webpack - 更改 vue 中的基本 URL(基于“pwa”和“webpack-simple”模板的应用程序)

0 投票
0 回答
125 浏览

nginx - Heroku 上的 Nginx 和 websockets

我正在寻找网关/反向代理解决方案,我们将不得不将用户路由到少数 API(超过 500 000 cals/每日 API)。

条件是该解决方案可以使用: - web sockets/https(+负载平衡) - 基于 nginx - 可以安装在 Heroku 上

有没有人有经验,最好的免费付费工具是什么?有开箱即用的解决方案吗?

  • 我已经在 Heroku 上安装了 nginx buildpack 并尝试使用 OpenResty (lua-resty-websocket) 但我也想听听其他可能性。

谢谢!

0 投票
1 回答
148 浏览

docker - nginx docker proxy_path 到服务器中的另一个 docker

我在 y 服务器上运行了这两个 docker:

docker-registry:5000/library/nginx:1.7.10.1哪些端口是443/tcp, 0.0.0.0:3010->80/tcp

docker-registry:5000/library/java:8-jre哪些端口是0.0.0.0:9090->8080/tcp

我想做的是将所有请求响应/api/到以 java docker 开头的 Nginx 服务器。所以,我为我的 Nginx docker 使用了一个配置文件,如下所示:

但是,当我从浏览器向我的 Nginx 服务器发送发送请求时,我的 Nginx 服务器包含/api/URL(如http://path_to_my_server:3010/api/login),我得到 404 Not Found 响应。

我的配置文件有什么问题吗?我基本上使用了错误的解决方案吗?我应该怎么做才能解决这个问题?

原因(通过 nginx 服务器有一个到 java 服务器的代理路径)是我只有一个端口在我的服务器上打开,所有请求都应该通过它接收。

0 投票
1 回答
2089 浏览

node.js - 使用 nginx 反向代理时,nodejs 中未收到自定义标头

我有 nodejs 和 nginx 正在运行我在 API 'api_key' 中发送一个额外的标头,它没有在 nodejsreq.headersreq.get('api_key')收到我有下面的 nginx 配置文件

如果设置proxy_set_header api_key 'some value'它的值有效并且标头打印在控制台上但是api_key会发生变化,这就是我使用的原因,$http_api_key以便在api_key从其他客户端发送自定义标头时接收到自定义标头中的任何内容。我尝试了几种解决方案,proxy_set_header api_key $upstream_http_api_key;但没有帮助。我想接收从 nodejs 中的 rest 客户端发送的任何自定义标头。

0 投票
0 回答
223 浏览

nginx - http2 在 nginx 1.12 上不起作用 - debian8

我正在设置http2. nginx下面的代码片段是我在sites-available目录中的 nginx 虚拟主机:

nginx 在这里是反向代理,主要的网络服务器是Gunicorn用于服务Django代码的。当我使用 Chrome 或 Firefox 检查元素测试该站点时,它会将所有连接协议显示为HTTP1.1. 我该如何解决这个问题?

更新 以下是nginx -V命令的结果:

--prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib/nginx/modules --conf-path=/etc/nginx/nginx.conf -- error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --锁定路径=/var/run/nginx。锁定 --http-client-body-temp-path=/var/cache/nginx/client_temp --http-proxy-temp-path=/var/cache/nginx/proxy_temp --http-fastcgi-temp-path=/ var/cache/nginx/fastcgi_temp --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx -- group=nginx --with-compat --with-file-aio --with-threads --with-http_addition_module --with-http_auth_request_module --with-http_dav_module --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module--with-stream_ssl_preread_module --with-cc-opt='-g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fPIC' --with-ld-opt= '-Wl,-z,relro -Wl,-z,now -Wl,--按需 -pie'

0 投票
3 回答
691 浏览

docker - 可以在 docker 端口后添加前缀

我正在使用 docker 容器来托管我的 angular 4 项目。我有 nginx 服务器在我的客户端和我的 API 之间进行中介。无法找到使用类似 localhost/coffee 的方式访问我的前端的方法。

而不是推荐的访问docker的方式 127.0.0.1:9000

之后 docker run -p 9000:80 image

127.0.0.1:9000/coffee 以后我能这样做吗

我可以访问在实时服务器上的端口 9000 上打开的位置 localhost/coffee。我需要在暴露的端口 docker 端口上添加前缀咖啡。

0 投票
0 回答
147 浏览

nginx - Nginx,抑制/屏蔽默认错误

我已经编写了 lua 代码并集成在 nginx 中以将文件上传到 s3 存储桶中。如果上传失败或签名格式错误,我会收到一个 403 Forbidden,它与非常冗长的错误 XML 一起发送给客户端。我想拦截/返回默认错误消息,而不是来自 s3 的显示访问密钥 ID 的详细错误消息。

我尝试在下面添加代码段,但它没有任何效果:

当我看到 curl cmd 上传的响应时,有两个状态码,100 和 403。

我如何处理这个以返回所有 403 状态代码响应的默认响应。

0 投票
0 回答
825 浏览

angular - 我无法使用基本 url 访问 dockerized Angular 应用程序

我是码头工人的新手。我以这种方式集成了我的基础架构。我在 nginx 图像中敲击了我的 angular 4 项目。我也在使用 nginx 作为 Angular 项目和 api 之间的反向代理。我想使用 url 访问我的应用程序,http://localhost:9000/system但我只能这样做http://localhost:9000。运行这个之后

我尝试构建我的 Angular 应用程序ng build --prod --base-href /system,并更改了<base href='/system'/>. 它在我的开发机器上运行良好,但是当我在 docker 内说唱时,我只能访问http://localhost:9000,更糟糕的是,我在刷新浏览器后无法访问应用程序。

Dockerfile

nginx.conf

0 投票
1 回答
953 浏览

nginx - 带有上下文(虚拟)路径的 ngnix URL

我的 ngix 站点配置文件如下所示。我想将上下文路径添加到我的 URL

我可以通过http://localhost:8888访问站点,但我想将上下文路径添加到我的站点 URL,例如http://localhost:8888/MyApp

}

提前致谢

0 投票
1 回答
64 浏览

node.js - 每秒创建 nodebb/nginx 请求

我用 nodebb (nodejs) 和 nginx 作为代理配置了一个服务器。我正在使用模块接受的 http 请求填充 nodebb 数据库。

我每次运行 100 个请求,大约 56 秒后请求完成。

为了减少延迟,我将云服务器(digitalocean droplet)的大小调整为 64gb ram 20cpu,但没有改变。我是 nginx 和 nodebb 的新手,但我认为 nginx 或 nodebb 配置有一些限制,是对的,还是有其他问题?

谢谢