【问题标题】:redirect HTTP POST apache,重定向 HTTP POST apache,
【发布时间】:2012-11-03 01:15:13
【问题描述】:

我有一个问题,我想从另一台服务器获取参数 HTTP POST,我想通过 HTTP POST 从服务器 A 到服务器 B 进行通信,在这个问题中,服务器 A 使用默认软件向服务器 B 进行 POST。但是如果我查看 access.log,服务器 B 无法从服务器 A 获取请求 HTTP POST

"POST http://mywebsite/class/param" 404

也就是说,来自服务器 A 的请求无法识别,404 页面未找到。然后我模拟使用 html 表单使用方法 POST 来获取正确的日志,如果我再次查看 access.log,

"POST /class/param" 200

200 表示 OK,请求可接受,。

我的问题是如何重定向 POST

http://mywebsite/class/param

/class/param

??我试过搜索,好像可以用mod_rewrite,但还是不能用。

规格:
服务器网络:apache
网络语言:php
php 框架:codeigniter

【问题讨论】:

  • 嗯,存在和 php 扩展名 curl 可能对您有用。这是关于如何使用它的good example
  • 感谢 manix 的回复,但我的问题是无法从服务器 A 检索 POST,

标签: php apache codeigniter mod-rewrite


【解决方案1】:

如果您重写 POST 请求,则不会包含内容正文,因此您将丢失 POST 参数。您需要做的是更改发送此请求的内容,以便发送正确的 URI。看起来它可能像http://mywebsite/http://mywebsite/class/param 这样简单的操作,它只需要删除主机。

【讨论】:

  • 是的,可能是在服务器 A 中设置错误以输入适当的 URI。但是如果我在 access.log 中模拟使用 html 表单 http://mywebsite/http://mywebsite/class/param 中的操作将显示 POST "/http://mywebsite/class/param" 404 看起来与来自服务器 A 的结果 access.log。我一直与管理服务器 A 联系,他声称 URI 与我请求的相同。我该怎么办?
  • @panji 如果没有前导斜杠,则表示有人将您的服务器用作代理服务器。无论哪种方式,使用 mod_rewrite 都无法解决此问题,您需要修复问题的根源。
猜你喜欢
  • 1970-01-01
  • 2016-06-13
  • 1970-01-01
  • 2016-01-19
  • 2013-09-27
  • 2016-02-04
  • 2019-12-17
  • 2015-12-09
  • 1970-01-01
相关资源
最近更新 更多