相关疑难解决方法(0)

302和307重定向有什么区别?

a 302 FOUND307 TEMPORARY REDIRECTHTTP响应有什么区别?

W3规范似乎表明它们都用于临时重定向,除非响应特别允许,否则它们都不能被缓存.

redirect http

196
推荐指数
6
解决办法
13万
查看次数

nginx将POST请求重定向到GET请求

我有在pumaWeb服务器上运行的Rails 4.1应用程序。我使用nginx作为代理服务器。几天前,一切运作良好。我更新了我的应用程序,突然有些POST请求开始重定向到相同的URL,但作为GET请求。我尝试回滚到以前的工作版本,但没有成功。

我发现了非常有趣的行为。我使用来测试了我的API curl

  • 如果我确实POST请求了该URL, http://myapp.com/tasks/easy_task/calculate/它将重定向到相同的URL,但作为GET请求。
  • 然后我确实POST要求http://myapp.com/,传回404
  • 然后我确实POST要求http://myapp.com/tasks,传回404
  • 然后我确实POST要求http://myapp.com/tasks/easy_task,传回404
  • 然后我确实POST要求http://myapp.com/tasks/easy_task/calculate,返回200。

当我使用chrome的应用程序时,发生了同样的事情Postman。首先,它进行了重定向,但是经过前面的步骤,它可以很好地工作。

我在其他应用程序中使用了此应用程序。我RestClient用来发出http请求。当我尝试发出POST请求时,将引发异常RestClient::MovedPermanently (301 Moved Permanently)

  • 我重新安装nginx1.7.3
  • 重新启动服务器(虚拟机)
  • 重新部署我的应用程序,部署以前的版本
  • 没有成功:(

我在stackoverflow上发现了类似的问题,但没有一个给我提供解决此问题的线索。希望您能帮助我解决这个问题。提前致谢!

类似的问题: - POST请求轮流到GET请求 - POST请求的神秘变成GET请求

Nginx的配置:

$ cat /etc/nginx/sites-enabled/myapp.com.conf
# The file generated by Chef for mycompany

upstream myapp_mycompany_com { …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails nginx rest-client puma

1
推荐指数
2
解决办法
3172
查看次数

标签 统计

http ×1

nginx ×1

puma ×1

redirect ×1

rest-client ×1

ruby-on-rails ×1