很多站长朋友们都不太清楚php项目引入novnc,今天小编就来给大家整理php项目引入novnc,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 通过noVNC实现远程连接windows桌面 2、 html5 vnc client 怎么使用 3、 novnc 如何查询版本号? 通过noVNC实现远程连接windows桌面最近项目需要能够实现远程桌面,目标桌面是windows系统,发起源是我们后台管理系统的一个子页面,这就需要通过网页打开远程桌面并进行链接,所以我们选用了noVNC。网上大部分都是linux系统为服务器端,现在我就介绍下windows系统为服务器端的情况。
noVNC简介:我们集成在管理系统中的vnc访问客户端,提供一种在网页上通过html5的Canvas,通过这个在线网页发起vnc请求,访问目标机器上vncserver提供的vnc服务。
参考
utralVNC简介:windows的vnc服务器,在你需要访问的目标机器上安装。
参考
websockify简介:noVNC是通过websockt建立链接,而VNC server不支持websocket,所以需要开启websockify代理来做 WebSockets 和 TCP sockets 之间的转换。
参考:
进入websockify-master\websockify-master\other\js
启动node服务器(这边直接$node websockify.js会报错,记得安装相关js模块 )
输入:node websockify.js 8000 localhost:5900 转发8000端口的http链接到5900端口(具体看vnc的设置,有些服务器的端口不一定是5900)即vnc服务器端口,从而建立链接。
下图是我们用的小米路由器的设置,其他路由器自行搜索方法。
注意:这边的外部端口(图中8001)是noVNC页面外网访问时候需要填写的端口,这边的内部端口(图中8000)是路由转发的端口,即这个端口必须和websockify.js监听的端口一致,参考第二步,websockify.js监听转发的端口也是8000。
Extension:
1.多台服务器可以在路由器转发的时候设置不同的端口来进行访问。
2.realVNC tightVNC的服务器测试均不能通过noVNC访问,有一些诡异的报错。
3.现在的链接都是非加密的,加密的链接还没尝试。python服务器的通信加密在linux机器下测试可行。
html5 vnc client 怎么使用Virtual Network Computer 是一款优秀的远程控制工具软件,基本上是属于一种显示系统,也就是说它能将完整的窗口界面通过网络,传输到另一台计算机的屏幕上。
noVNC可以使用浏览器直接访问服务器而不需要使用VNC客户端,在某些特定的情况下,如项目有端口号限制等只能开80或443等,那么使用noVNC+Nginx做反向代理,就可以做到浏览器上远程访问了。
环境:
1.vncserver服务已经安装,服务启动正常。
2.#yum install git -y 安装git包
部署:
首先下载noVNC:
下载上面两个链接包后上传到服务器上,并解压到/usr/local下。
打开终端
#cd /usr/local/noVNC-master
#./utils/launch.sh --vnc localhost:5901 //这里的5901是vncserver的端口号,按实际情况来
执行后会出现提示访问不了资源,然后novnc资源文件在
/root/.local/share/Trash/files/noVNC-master 目录下,打开这目录文件,把解压的websockify-master文件夹改名为websockify,把文件夹复制到/root/.local/share/Trash/files/noVNC-master/utils下。
由于VNC的默认会话不是安全的,我们需要创建一个安全的VNC连接。执行:
#openssl req -new -x509 -days 365 -nodes -out self.pem -keyout self.pem
生成证书,放到/root/.local/share/Trash/files/noVNC-master/utils下。
改为:
;port=80
步骤:
1.修改nginx
增加配置:
location /novnc
{
proxy_pass ; #修改为需要被反向代理的WebSocket的IP和端口号
}
location /websockify
{
proxy_pass ; #修改为需要被反向代理的WebSocket的IP和端口号
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
}123456
重启nginx。
2.在/root/.local/share/Trash/files/noVNC-master/下增加novnc文件夹,这个文件夹名字跟你配置的上下文名字相同。然后把
/root/.local/share/Trash/files/noVNC-master/ 文件夹下的文件复制一份到novnc文件夹下。
3.修改访问地址最后一个参数port,port=80
4.添加开机启动novnc,修改/etc/rc.local文件,添加
sh /root/.local/share/Trash/files/noVNC-master/novnc/utils/launch.sh --vnc localhost:5901
注:开机自启功能会导致无法正常使用vnc连接服务
IIS7服务器管理工具可以批量管理、定时上传下载、同步操作、数据备份、到期提醒、自动更新。IIS7服务器管理工具适用于Windows操作系统和liunx操作系统;支持Vnc客户端和Ftp客户端批量操作。
novnc 如何查询版本号?找到novnc——点击“鼠标右键”——点击“属性”——点击“详细信息”就可以看到版本号。
noVNC 是一个 HTML5 的 VNC 客户端,采用 JavaScript 编程实现。其主要功能是和远端的 VNC Server 互通,通过对 RFB(Remote Frame Buffer)协议 数据的编解码,一方面接收远端 VNC Server 发送的数据,解码后通过 Cancas 技术绘制在客户端侧,另一方面将客户端侧的终端输入编码成 RFB 数据发送给远端的 VNC Server。也就是说有了 noVNC,我们可以直接使用支持 HTML5 的 Web 浏览器,譬如 Chrome,就可以访问远端的安装了 VNC Server 的机器的桌面,而不用另外安装原生的 VNC 客户端(譬如我们经常在 Windows 上安装的 RealVNC Viewer)。
但需要注意的是,具体传输时,和原生的 VNC 客户端不同,原生的客户端的 RFB 数据是直接承载在 TCP (Raw TCP)上,而 noVNC 处理的 RFB 数据是承载在 Websocket 之上。由于目前大多数 VNC 服务器都不支持 WebSockets,所以 noVNC 是不能直接连接 VNC 服务器的,怎么办呢?这就需要一个代理来实现 Websockets 和 Raw TCP 之间的转换,这个代理就是 Websockify。
Websockify 主要是采用 Python 开发,其主要功能就是实现 Websockts 和普通 TCP 数据包之间的转换。Websockify 原先被叫做 wsproxy,是 noVNC 项目的一部分,但现在被独立出来,作为一个独立的代理服务开发。这么做也是合理的,因为根据我们前面的描述,引入 websockify 代理的原因是因为有些 vnc 服务端不支持 websockets 传输,而对于那些可以支持 websockets 传输的 vnc 服务器,我们完全可以省掉 websockify。
一个典型的从客户端浏览器到 VNC 服务器,中间经过 Websockify 转换的网络如下,注意其中 noVNC 作为一个 HTML5 的客户端,虽然一开始是存放在 websockify 所在的代理服务器上,但其主体 js 代码会在客户端浏览器访问 websockify 服务时被下载到客户端的浏览器中执行。
iis7服务器管理工具是一款免费vnc软件。它可以批量管理、定时上传下载、同步操作、数据备份、到期提醒、自动更新。iis7服务器管理工具适用于Windows操作系统和liunx操作系统;支持Vnc客户端和Ftp客户端批量操作。
关于php项目引入novnc的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php项目引入novnc php项目入口文件的详细内容...