我希望我的普通Rails错误页面被传递给用户代理。我当然可以使用普通Rails技术定制这些页面。
但如果有内部乘客错误(通常是乘客根本无法启动应用程序),我想自定义该页面。有什么方法可以做到这一点吗?
如果我(apache)将PassengerErrorView设置为on,那么我就可以在apache端配置内部乘客错误页面--但我想,我也会丢失所有定制的普通Rails错误页面。
有没有什么方法可以让我的自定义Rails错误页面保持正常运行,但仍然以某种方式自定义内部的Passenger致命错误屏幕?
谢谢你,谢谢
2条答案
按热度按时间plicqrtu1#
让我们看看我是否理解正确。如果用户收到HTTP 500错误页面,这可能来自三个不同的来源:
1.你的Rails应用程序(通常)
1.乘客(可能很少,例如产卵错误)
而你想让用户得到的是:1. +(由你定制)2.
覆盖2.的默认方法确实是使用选项3.,但这也会覆盖1.,这是您不希望看到的。
我认为Passenger中目前没有其他选项可以覆盖2.,但你可以覆盖Passenger使用的模板。如果友好的错误页面设置为off,模板是:
字符串
au9on6nz2#
我最终为此编写了一个自定义卡皮斯特拉诺任务。
字符串