如果我把它放入我的HAML,
:ruby
foo = "2".asdf
%p ss
正如预期的那样,我从Sinatra得到了这个错误:
NoMethodError at /
undefined method `asdf' for "2":String
但是当我的HAML中有 UNICODE CHARACTER 时:
:ruby
foo = "2".asdf
%p ß
我不再收到错误,而是Apache崩溃(“500内部服务器错误”),并将Premature end of script headers:
输出到Apache错误日志中。
有人可以解释为什么Sinatra错误消息不喜欢HAML中其他地方的unicode字符吗?我应该提一下,当没有错误出现时,unicode字符工作正常。
顺便说一下,我当然在我的Sinatra应用程序(处于开发模式)中完成了set :show_exceptions, true
,这就是错误首先出现的原因。