ruby sinatra mysql_Sinatra应用程序不返回Ruby 1.9.3(适用于Ruby 1.8.7)

我有一个在多台服务器上运行的Sinatra实用程序应用程序,我们将它用于一些内部任务。它执行一些命令行并将结果吐出到视图中。

在运行Ruby 1.8.7的服务器上它工作正常,但是当我将它部署到运行Ruby 1.9.3的新服务器时(通过乘客apache 2模块),它会返回空响​​应。两者都在运行Sinatra 1.3.2和Passenger 3.0.x.唯一的区别(我可以看到)是Ruby的版本。

Ruby 1.9.3中有没有任何与Sinatra或执行shell命令(通过backtics)会导致这种情况?

应用程序是沿着这些线的东西:

require 'rubygems'

require 'sinatra'

require 'erb'

require 'fileutils'

require 'digest/sha1'

require 'net/http'

require 'uri'

configure do

set :views, "#{File.dirname(__FILE__)}/views"

end

error do

e = request.env['sinatra.error']

Kernel.puts e.backtrace.join("\n")

'Application error'

end

# root page

get '/' do

erb :index

end

post '/create' do

kommand = "ls -lha /some/dir"

result = `#{kommand}`

# Render the done template

return erb :done

end再说一次,使用Ruby 1.8.7的服务器可以正常工作,但是我使用Ruby 1.9.3在新的服务器上获得了这个功能

fe3d43daa710cf648ea381229d4e2904.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值