Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 如何关闭Rack应用程序中的异常?_Ruby_Rack - Fatal编程技术网

Ruby 如何关闭Rack应用程序中的异常?

Ruby 如何关闭Rack应用程序中的异常?,ruby,rack,Ruby,Rack,我已准备好部署RackServerPages应用程序,但似乎找不到禁用异常的方法,即Rack::ShowExceptions呈现的异常 谢谢 我有几个小时不愉快的经历,尝试禁用Rack::ShowExceptions失败,但最终我发现我不需要这样做 在生产环境中,这是关闭的(当您尝试curl-XINVALID-k时)https://my-production-app.com它将返回空白屏幕) 但是,如果您需要在自定义(例如“暂存”)环境中禁用此功能(仍显示机架跟踪代码),则这无法解决问题 在轨道

我已准备好部署RackServerPages应用程序,但似乎找不到禁用异常的方法,即Rack::ShowExceptions呈现的异常


谢谢

我有几个小时不愉快的经历,尝试禁用
Rack::ShowExceptions
失败,但最终我发现我不需要这样做

在生产环境中,这是关闭的(当您尝试
curl-XINVALID-k时)https://my-production-app.com
它将返回空白屏幕)

但是,如果您需要在自定义(例如“暂存”)环境中禁用此功能(仍显示机架跟踪代码),则这无法解决问题

在轨道上测试
3.2.21


在Rails上
4.0.12
这适用于我的生产和自定义“暂存”环境

RACK_ENV
环境变量设置为
deployment

从技术上讲,将
ENV['RACK\u ENV']
设置为
development
之外的任何值都将禁用异常<代码>机架::ShowExceptions中间件是指机架在系统中运行时

对于Rails应用程序,请将
ENV['RACK_ENV']
设置为
deployment
,确保还将
ENV['Rails_ENV']
设置为适合您环境的正确值(
生产
开发
,等等)。如果未设置
ENV['RAILS\u ENV']
,RAILS应用程序将返回到
ENV['RACK\u ENV']
,RAILS将投诉未知的
部署
环境


如果使用
unicorn
,也可以设置
ENV['RACK\u ENV']
部署

确保在生产模式下机架堆栈中没有它。这当然是一个选项,但我没有办法在config.ru中关闭它吗?@matt try
curl-XINVALID-khttps://my-app.com
它是默认的机架堆栈跟踪中间件