我已经创建了一些phoenix应用程序,并且所有似乎默认情况下都不接受https请求。我收到错误[error] Cowboy returned 400 and there are no headers in the connection.
。 Http请求按预期返回数据。如何配置phoenix/elixir应用程序接受https请求
回答
我相信,你需要配置你的应用程序的端点相关config.exs
- 是这样的:
config :my_app, MyApp.Endpoint,
http: [port: {:system, "PORT"}],
url: [scheme: "https", host: System.get_env("HOST"), port: 443],
force_ssl: [rewrite_on: [:x_forwarded_proto]]
其中System.get_env("HOST")
是您的应用程序的网址... localhost:4000
,在地方发展的情况下,我会认为。
文档 - http://wsmoak.net/phoenix/Phoenix.Endpoint.html
然后,你需要添加CORS插件 - https://github.com/mschae/cors_plug
我建了一个凤凰的应用程序作为一个API,我跟着一下文件的指示,设置它在我路由器像他们一样,或多或少:
pipeline :api do
plug CORSPlug, [origin: Application.get_env(:my_app, :client_url)]
plug :accepts, ["json"]
end
scope "/api", PhoenixApp do
pipe_through :api
resources "/articles", ArticleController
options "/articles", ArticleController, :options
options "/articles/:id", ArticleController, :options
end
使用'url:[scheme:“https”,host:{:system,“HOST”},port:443],''而不是'url:[scheme:“https”,host:System.get_env(“ HOST“),端口:443],'。第二种变体将修复你的配置**编译时环境变量**'HOST'。 '{:system,“HOST”}'在运行时进行评估。 – djinn
@djinn酷,感谢您的帮助提示。 – skwidbreth
- 1. 使用Spring Security配置应用程序接受HTTP请求并发送HTTPS响应
- 2. 服务器实用程序:接受HTTPS POST请求,猫数据
- 3. Visual Basic https获取请求 - 接受SSL
- 4. 如何接受Python套接字应用程序中的GET请求?
- 5. 区分接受的应用程序请求尚未在Facebook上接受
- 6. 配置Tomcat进行https https请求没有响应
- 7. 请求与接受头设置为应用程序RESTful服务/ XML
- 8. 应用程序接收请求c#
- 9. 如何配置Slim应用程序以使用自定义请求对象?
- 10. Android应用程序发明人:如何设置HTTPS连接?
- 11. 如何从Java应用程序设置Https连接
- 12. 将ASP.NET应用程序配置为始终接受来自特定IP地址的GET请求?
- 13. 如何使用Windows 10使用Postman本机应用程序捕获https请求?
- 14. 想要在iphone上使用https请求phonegap应用程序
- 15. https请求在phonegap iphone应用程序中不起作用
- 16. https请求不适用于android应用程序
- 17. Android应用程序如何对Bluemix部署的node.js应用程序进行RESTAPI调用,该应用程序接受该请求并连接到sqldb?
- 18. 如何通过Apache配置ProxyPass websocket请求节点应用程序?
- 19. 如何配置一个春天mvc应用程序的页面请求
- 20. 将@PostConstruct配置对象请求在Spring MVC接受
- 21. 如何在Tornado应用程序中接收多个请求
- 22. Facebook应用程序请求
- 23. 如何接受Spring请求的GET请求中的LocalDateTime参数?
- 24. 如何配置我的Google Analytics帐户接受来自file:// url的请求?
- 25. 科尔多瓦窗口应用程序ajax请求HTTPS失败,连接失败
- 26. 如何检查请求是HTTPS的应用程序引擎蟒蛇
- 27. 如何将http请求重定向到https在websphere应用程序服务器
- 28. 如何创建受外部应用程序邀请的Facebook应用程序?
- 29. Webpack不接受POST请求
- 30. 正确脚手架的Node.js应用程序,而不快递(应用程序不接受请求)
我不会这样做。我宁愿只为Phoenix提供http请求,让像Nginx这样的http服务器同时处理http和https请求。 Nginx会将它们代理给Phoenix。易于安装和维护。 –