我正试图在sinatra和mongoid中为自己写一个小博客引擎,并尝试使用sinatra-authentication gem登录/退出。
我已经让sinatra,mongoid和haml都工作了但是当我访问任何sinatra身份验证页面时,nginx会引发内部服务器错误。
这是我得到的错误
Errno::ENOENT - No such file or directory - /opt/nginx/html/raptor.patrickarlt.com/views/layout.haml:
您可以在此处查看我的所有文件,包括更多来自我的nginx错误日志https://gist.github.com/854156
得到'/'确认Sinatra正在工作
得到'/ haml'确认haml正在工作
得到'/ private'重定向到'/ login'确认sinatra-authentication正在工作
获取'/ login'内部服务器错误
Ruby 1.9.2
Nginx 0.8.54
乘客3.0.2
答案 0 :(得分:1)
sinatra-authentication
假设您正在使用布局,除非当前请求是XMLHttpRequest(请参阅the code)。您有两种选择:
views/layout.haml
中为您的应用程序创建一个布局,如http://sinatra-book.gittr.com/#templates下的几段所述覆盖sinatra-authentication的use_layout?
方法:
module Sinatra
module Helpers
def use_layout?
false
end
end
end