问题标签 [proxypass]

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 投票
1 回答
1045 浏览

proxy - mod_rewrite 代理 URL 缺少图像/css

我有以下 mod_rewrite 使用代理标志从一个 URL 文件夹重定向到另一个站点子域,如下所示:

.htaccess 文件放置在http://www.domain.com/test/文件夹中:

问题、图像、CSS 和链接没有正确显示。链接似乎指向:http://www。域 .com/linkname.html

我试过做 RewriteBase /test/ 和 / 没有运气,但想不出任何其他方法来做到这一点。

我在上面的代码中缺少什么以使其与目标 URL 的相对路径一起工作?

0 投票
1 回答
1462 浏览

.htaccess - 使用 .htaccess 更改正在显示的 URL,但没有实际重定向内容?

我有一个要更改的 RewriteRule 设置

http://kn3rdmeister.com/blog/post.php?y=2012&m=07&d=04&id=4

进入

http://kn3rdmeister.com/blog/2012/07/04/4.php

但这实际上重定向了浏览器从中获取页面的位置。我还想显示

/blog/post.php?y=xxxx&m=xx&d=xx&id=xx

但让浏览器显示更简单的 URL,例如

/blog/post/year/month/day/id.php

我在某处读过一些关于使用 ProxyPass 的文章,但我不太清楚自己在做什么:P

我希望人们能够访问带有查询字符串的 post.php URL,或带有花哨的 shmancy 日期子目录的干净 URL 并获得相同的内容——同时最后显示干净的 URL。

0 投票
1 回答
1618 浏览

nginx - nginx proxy_pass 和 couchdb 的问题

我想使用 nginx 在端口 80 上服务 couchdb。我基本上像这样设置nginx conf文件:

除特殊情况外,该配置似乎有效。当我输入时,http://example.com/_utils/我进入了 couchdb 实例,但是如果我输入http://example.com/_utils(注意缺少尾部斜杠),我什么也得不到,因为我被重定向到http://couchdb/_utils. 请注意,两者都http://example.com:5984/_utils/可以http://example.com:5984/_utils正常工作。

我的 WAG 是 nginx 配置的问题,但我不确定是怎么回事。

0 投票
1 回答
3021 浏览

ruby-on-rails-3 - nginx 重写/proxy_pass 问题

我做了一些广泛的搜索,并且有很多关于 nginx proxy_pass 问题的帖子。我已经尝试将我的问题修改为其中一些问题,但没有任何进展,所以就到这里。

我正在将一个基于 php 的网站重写为 Rails。原始网站本身是带有表单的简单 2 页。它使用 Apache 中的 mod_rewrite / mod_proxy 解决方案来屏蔽表单发布后站点继续的 url。

php 站点有 3 个目录,其中只有 3 个 .htaccess 文件,为了简单起见,让我们调用目录 a、b、c。每个 .htaccess 文件都包含以下内容

我不是 apache 专家,但我很确定 [P,L] 与 proxy_pass 相同并且在 nginx 中是最后一个?

我正在尝试为使用乘客和 nginx 转换为 rails cms 的 php 站点重写此解决方案。

到目前为止我的解决方案不起作用,因为 rails 应用程序只返回一个 404 页面未找到,所以我知道 proxy_pass 没有将发布请求转发到另一台服务器。我的 nginx.conf 文件是:

如果我取消注释重写规则,它只会反弹到我试图屏蔽的另一个站点。我也做了一个标题跟踪来验证。没有看到任何发布到其他域的内容。我有点难过,因为我对 nginx 很陌生,不知道该怎么做。Apache 不适用于 rails 和 mod_rewrite / mod_proxy。任何见解都会很棒。

0 投票
0 回答
1399 浏览

apache - Apache httpd proxypass cookie

Apache 在(虚拟 IP)上运行

IIS 7.5 运行在

Apache Config(代理到 IIS 端口 80)

当我点击 apache 的 URL

它返回一个 setCookie(来自 IIS 端口 80)

从 chrome 的 web-inspector 来看,cookie 都设置在端口 2222 (apache) 和端口 80 (IIS) 上。

这是否意味着 Apache 将 cookie 代理到端口 80 上的 IIS,因此 cookie 设置在端口 80 和 2222 上?

还是我错过了什么?

0 投票
5 回答
77175 浏览

apache2 - 收到带有签名的 Ajp 无效消息

我正在使用带有 Apache 2.2.22 modproxy 的 Tomcat 7.0.29。在 httpd.conf 中将 Ajp 配置为协议,在 server.xml 中配置 AjpNioProtocol。服务器启动后,日志中充满以下消息:

严重:收到无效消息,签名
为 20599 com.apache.coyote.ajp.AjpMessage processHeader

没有请求发送到 web 或 tomcat 服务器,它仍然会抛出该错误。tomcat和apache的访问日志显示没有请求进来。是什么导致了invalid message错误?

这是配置:

  • httpd.conf

    /li>
  • 服务器.xml

    /li>
0 投票
1 回答
47952 浏览

apache - ProxyPassMatch 与 ProxyPassReverse

伙计们,我们正在尝试为以下场景设置 Apache 反向代理:

  • 传入请求采用以下形式http://foo.com/APP/v1/main.html
  • 对于某些服务器,URL 将引用不同的版本,例如,http://foo.com/APP/v2/main.html
  • 上游负载均衡器(HAProxy)会将请求发送到正确的服务器,该服务器将有一个面向 JBoss 服务器的 Apache2 反向代理。
  • 当请求出现在 Apache 2 时,它将具有类似的请求路径/APP/v1/main.html
  • 我们希望它(反向)代理到http://localhost:8080/AppContext/main.html而不考虑URL 中的版本片段(v1、v2 等)。

我一直在尝试这样做:

我的问题是:

  1. 我的用法ProxyPassMatch正确吗?
  2. ProxyPassReverse的是“静态的”。我如何让它知道之后的潜在变量/APP

感谢您的任何见解。

-拉吉

0 投票
0 回答
878 浏览

apache - Apache - Tomcat ProxyPass 维护会话 http / https

我在 Tomcat 实例中部署了一个标准的 webapp。此 Web 应用程序中有一些页面通过 http 从一个域访问,而其他一些页面通过 https 从另一个域访问。我正在使用这样的代理通行证:

场景如下:webapp 中的每个页面都通过以下方式访问:

虽然有一些页面由以下人员访问:

例如,当用户在

那里有一个链接

在浏览此类站点时,我可以做些什么来维护用户的会话信息?

先感谢您。

0 投票
1 回答
1988 浏览

mercurial - 多重身份验证与 Nginx 代理一起使用

我正在尝试proxy_pass在 Nginx 中验证几个位置。Nginx 配置如下:

身份验证工作正常,但代理在嵌套位置(repo1、repo2)被破坏。似乎proxy_pass配置没有被继承。因此,Nginx 返回 404(在 /hg/repo1 和 /hg/repo2 上)。

有什么提示吗?

0 投票
1 回答
5127 浏览

django - Django 应用程序的 ProxyPass 和 ProxyPassReverse

我的原始Django 服务问题有一个后续问题,即如何开发 Django 应用程序并从与我的主要基于 PHP 的站点相同的服务器上提供它们(我的网站从静态和 PHP 驱动的网站迁移的所有部分)到一系列 Django 应用程序)。

我不能完全使用我提供的名称服务器解决方案,而是使用 mod_wsgi 将我的 Django 应用程序部署在不同的端口 (8000) 上。但是,现在我需要将 Django 应用程序实际集成到主站点中。在我的 Apache 2.0 配置文件(比如http://www.example.com)中,我添加了以下 ProxyPass 命令(在我的 mod_wsgi 初始化之后):

在这里,我希望任何请求:

将成功代理到:

世界一切都会好起来的。

然而,这种情况并非如此。Apache 挂了 5 分钟左右(制作这个问题所花费的时间)然后吐出502 代理错误

在此响应之后查看我的 Apache 2.0 错误日志,我看到如下连续错误:

因此,mod_proxy 如何与 Django 和/或 Python 一起玩似乎有些疏忽。我还有其他使用 ProxyPass 和 ProxyPassReverse 的 Java 相关进程,它们工作正常。此外,当我不尝试应用 ProxyPass 时,Django 应用程序都运行良好(即,当我直接在端口 8000 上寻址它们时)。

有任何想法吗?我不觉得我正在做的事情特别复杂。

提前致谢。