几个月前,我在html / php中创建了一个用于输入新虚拟机信息的表单。
我一直在研究一个简单的ruby脚本,它会为新的虚拟机找到一个新的IP地址。
这两个项目没有联系,但现在我希望它......但是我很难过。我想要做的是使用用户在Web表单中提供的信息运行ruby脚本。
让我们说用户输入新的VM名称(vm1)和其他一些东西,比如它的vlan id(1)。我希望能够让表单使用正确的参数(./script.rb --add vm1 --vlanid 1 --...)启动脚本。我试图找到一种简单的方法来做到这一点,但没有成功。我安装了乘客,但我有点迷失了,安装它只是为了做我想要的东西似乎太过分了。
谢谢你们!
答案 0 :(得分:2)
您可以使用exec()执行此操作:
<?php
// TODO: Security checks!
exec("./script.rb --arg1 $arg1 --arg2 $arg2 &");
?>
另一种方法是在Ruby脚本中添加一个Web界面。非常简单的Web界面的一个很棒的宝石是Sinatra,你可以定义一个基本的处理程序:
require 'rubygems'
require 'sinatra'
get "/" do
# do what you need to do, all the GET arguments are in the params Hash
end
答案 1 :(得分:1)
只要您确定表单输入(如前面评论中所述)
您可能只想查看使用该表单POST
数据(,如本文所述: http://biodegradablegeek.com/2008/04/how-to-post-form-data-using-ruby/)。