我目前有:

$ rails s
=> Booting WEBrick
=> Rails 3.0.9 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2011-11-30 13:18:00] INFO  WEBrick 1.3.1
[2011-11-30 13:18:00] INFO  ruby 1.9.2 (2011-02-18) [x86_64-darwin10.8.0]
[2011-11-30 13:18:00] INFO  WEBrick::HTTPServer#start: pid=4204 port=3000

我遇到的问题是我正在使用openID进行身份验证并收到以下错误:
[2011-11-30 13:18:19] ERROR WEBrick::HTTPStatus::RequestURITooLarge

在浏览器中:
Request-URI Too Large
WEBrick::HTTPStatus::RequestURITooLarge
WEBrick/1.3.1 (Ruby/1.9.2/2011-02-18) at macbook-pro.local:3000

我怎样才能解决这个问题?我可以更新WEBrick还是真的需要使用其他Web服务器?

谢谢

最佳答案

在Ruby 1.9.3中。来源,它说MAX_URI_LENGTH =2083。这意味着最新版本的Webrick无法处理更长的URL。这就是WEBrick::HTTPStatus::RequestURITooLarge异常告诉您的内容。

因此,解决方案是使用其他Web服务器。最喜欢的一种是Thin:

sudo gem install thin

cd to/your/rails/app

thin -h

thin -a localhost start

关于ruby-on-rails - WEBrick:RequestURITooLarge:我应该更新还是使用其他服务器?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8333158/

10-13 02:19