访问长网址时,Helicon Zoo / ISS 400 Bad Request错误

时间:2014-08-19 21:43:14

标签: iis ruby-on-rails-4 iis-7.5 dragonfly-gem heliconzoo

我在Ruby-on-Rails应用程序中使用Dragonfly gem来动态生成转换后的图像URL但是当我尝试访问图像的URL时,我收到以下错误:

HTTP Error 400. The request URL is invalid.

这似乎来自IIS,只有当url大于256字节时才会发生。如何在ISS中增加Helicon Zoo项目的最大URL大小。我已经尝试了here描述的解决方案但没有成功。

修改 这是链接(域名编辑):

  

的http:// {域}的.com /媒体/ W1siZiIsIjIwMTQvMDgvMTkvNmVqb3JuMmd4aF9BSVRfT0ZGSUNFX1RSQVNQQVJFTlRfRURHRS5wbmciXSxbInAiLCJjb252ZXJ0IiwiLWZ1enogMjUlIC1maWxsIFwiI2NjY2NjY1wiIC1vcGFxdWUgd2hpdGUiXSxbInAiLCJyb3RhdGUiLCI1MC41MDY1MDU2NjI3NzkzMiJdLFsicCIsImNvbnZlcnQiLCItZnV6eiAxJSAtdHJhbnNwYXJlbnQgd2hpdGUiXV0 SHA = 3062766b

这是由此代码生成的:

area_url = Area.find(params[:id]).image.convert('-fuzz 25% -fill "#cccccc" -opaque white')
area_url = area_url.rotate(params[:theta]).convert('-fuzz 1% -transparent white').url

1 个答案:

答案 0 :(得分:0)

我最终通过直接从此控制器返回图像而不是返回Dragonfly URL来解决此问题。

area_overlay = Area.find(params[:id]).image.convert('-fuzz 25% -fill "#cccccc" -opaque white')
area_overlay = area_overlay.rotate(params[:theta]).convert('-fuzz 1% -transparent white').file

send_file area_overlay, :type => 'image/png', :disposition => 'inline'