首页 > 解决方案 > 带有 Plug 和 Cowboy 的 Elixir:禁用漂亮的错误消息

问题描述

我正在使用heroku-buildpack-elixir将应用程序部署到 Heroku。我的应用程序包含一个简单的 Plug/Cowboy 设置。我注意到当发生未处理的异常时,会出现一个很好的错误消息,显示堆栈跟踪和出现错误的代码行。

这对于开发环境来说是可以的,但是在生产环境中我不希望我的代码对访问者可见。如何禁用或覆盖默认行为?

我尝试在 Heroku 中将MIX_ENV环境变量设置为prod无效。

标签: herokuelixirproductioncowboyplug

解决方案


将 Plug.Debugger 语句包装在 if 子句中。在 prod 环境中运行不再将错误显示为 html 页面。资源

  if Mix.env == :dev do
    use Plug.Debugger, otp_app: :my_app
  end

推荐阅读