php管理虚拟机,通过代理连接
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,1、 进入安装目录Cd C:\Program Files\Oracle\VirtualBox设置web认证库为null:VboxManagesetproperty websrvauthlibrary
千家信息网最后更新 2026年11月02日php管理虚拟机,通过代理连接
1、 进入安装目录
Cd C:\Program Files\Oracle\VirtualBox
设置web认证库为null:
VboxManagesetproperty websrvauthlibrary null
然后开启服务
vboxwebsrv --host 0.0.0.0
2、在浏览器输入http://127.0.0.1:18083
在博客下方附件,提供vbox接口文件
写代码实现时,vbox_oper操作帮助类
include_once('vboxServiceWrappers.php');class Vbox_oper
{
protected $serverIp;
protected $serverPort = "18083";
protected $proxy_uname;
protected $proxy_password;
protected $proxy_host;
protected $proxy_port;
protected $item;
protected $connection;
/*
* 模块名称:得到连接
* 参数说明:
* 作者:csl
*/
public function getConn()
{
$url = "http://" . $this->serverIp . ":" . $this->serverPort . "/";
//$this->connection = new SoapClient("vboxwebService.wsdl", array('location' => $url, 'connection_timeout' => 5,));
$this->connection = new SoapClient("vboxwebService.wsdl", array('location' => $url,'connection_timeout'=>5,
'proxy_host' => $this->proxy_host, 'proxy_port' => $this->proxy_port,
'proxy_login' => $this->proxy_uname, 'proxy_password' => $this->proxy_password));
return $this->connection;
}
/*
* 模块名称:初始化代理信息
* 参数说明:
* init_proxy 包含:ip,port,username,password
* 作者:csl
*/
public function init_proxy($proxy){
if(!empty($proxy['ip']))
$this->proxy_host = $proxy['ip'];
if(!empty($proxy['port']))
$this->proxy_port = (int)$proxy['port'];
if(!empty($proxy['username']))
$this->proxy_uname = $proxy['username'];
if(!empty($proxy['password']))
$this->proxy_password = $proxy['password'];
}
/*
* 模块名称:初始化服务器信息
* 参数说明:
* init_proxy 包含:server_ip,sbmc
* 作者:csl
*/
public function init_data($item, $proxy = array())
{
$this->serverPort = "18083";
if(!empty($item['server_ip']))
$this->serverIp = $item['server_ip'];
if(!empty( $item['sbmc']))
$this->name = $item['sbmc'];
if (!empty($proxy)) {
$this->init_proxy($proxy);
}
}
/*
* 模块名称:启动虚拟机
* 参数说明:
* 作者:csl
*/
public function start()
{
$this->getConn();
$websessionManager = new IWebsessionManager($this->connection);
$virtualbox = $websessionManager->logon("", "");
$machine = $virtualbox->findMachine($this->name);
$session = $websessionManager->getSessionObject($virtualbox->handle);
$state = (string)$machine->state;
if ($state != 'Running' && $state != 'Paused') {
$progress = $machine->launchVMProcess($session->handle, "headless", "");
}
}
/*
* 模块名称:关闭虚拟机
* 参数说明:
* 作者:csl
*/
public function stop()
{
$this->getConn();
$websessionManager = new IWebsessionManager($this->connection);
$virtualbox = $websessionManager->logon("", "");
$machine = $virtualbox->findMachine($this->name);
$session = $websessionManager->getSessionObject($virtualbox->handle);
$state = (string)$machine->state;
if ($state == 'Running' || $state == 'Paused') {
$lockType = new LockType($session, 'Shared');
$machine->lockMachine($session, $lockType->NameMap[1]);
$iconsole = $session->getConsole();
$progress = $iconsole->powerDown();
}
}
/*
* 模块名称:重启虚拟机
* 参数说明:
* 作者:csl
*/
public function restart()
{
$this->getConn();
$websessionManager = new IWebsessionManager($this->connection);
$virtualbox = $websessionManager->logon("", "");
$machine = $virtualbox->findMachine($this->name);
$session = $websessionManager->getSessionObject($virtualbox->handle);
$state = (string)$machine->state;
if ($state == 'Running' || $state == 'Paused') {
$lockType = new LockType($session, 'Shared');
$machine->lockMachine($session, $lockType->NameMap[1]);
$iconsole = $session->getConsole();
$progress = $iconsole->reset();
} else if ($state == 'PoweredOff') {
$progress = $machine->launchVMProcess($session->handle, "headless", "");
}
}
/*
* 模块名称:获取vbox里面所有虚拟机
* 参数说明:
* 作者:csl
*/
public function get_machines(){
$this->getConn();
$websessionManager = new IWebsessionManager($this->connection);
$virtualbox = $websessionManager->logon("", "");
$machines = $virtualbox->machines;
return $machines;
}
}
作者
参数
名称
模块
信息
附件
服务
代理
代码
博客
接口
文件
服务器
浏览器
目录
帮助
浏览
认证
输入
管理
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网巨头反垄断金融科技
互联网科技开发公司
互联网科技的发展
互联网科技金融公司
北京互联网络科技有限公司
互联网前沿科技
丰台科技园 互联网公司
农村开互联网科技讲堂
港股科技和互联网
互联网还是高科技吗
花神(南京)互联网科技有限公司
江阴互联网智能科技产品进口
东莞新华互联网科技学校
广州富喜互联网络科技
美国互联网科技公司
互联网领先科技宣传片
互联网科技快讯热点
广州燕处互联网科技有限公司
易租星互联网科技有限公司
互联网科技创新创业项目
互联网最新的科技
海南购全球互联网科技
上海电发互联网科技有限公司
科技互联网大厂
辽宁互联网新科技
天津腾达互联网科技有限公司
富国互联网科技002692
下一代互联网重大应用科技园
互联网科技职业技能培训学校
宁波允成互联网科技有限公司