从2018a开始Matlab提供了Web Apps功能,它能够将电脑设为服务器,把App程序发布到局域网,可以通过浏览器访问。使用步骤为
- 使用App Designer创建交互式的应用程序;
- 使用Web App Compiler打包;
- 基于MATLAB Web App Server托管。
每个web app都有一个惟一的URL,可以通过HTTP或HTTPS从web浏览器访问。服务器有一个主页,列出所有可用的托管web apps。通过共享web app的唯一URL或服务器主页地址,就可以让局域网的人共同使用这些web apps。
有了这个工具,大家就可以将平时开发的Matlab程序发布到本地Server,然后告诉局域网的小伙伴,大家就可以通过浏览器访问你的程序了,简直就是一个全栈Matlab算法平台,是不是很赞!
注意
- 只建议Server运行在可信内网环境,不建议对外网开放,否则会有风险,如被代码注入;
- 被访问时用户之间、程序之间可能会有相互干扰,所以避免同时访问。
使用要求
- 系统:Windows、Linux、maxOS均可(Ubuntu不支持14.04LTS,Red Hat不支持Linux 6)
- 硬盘:至少60G
- 内存:至少1G
- 内核:至少2核
- 浏览器:Chrome、Safari、Firefox、Microsoft Edge
安装(Win10,Matlab2019b)
安装有两种方式:在线安装和离线安装。前者是自动从网上下载然后安装,容易卡死,不如自己下载自己装。
1、下载安装包
下载地址:https://ww2.mathworks.cn/products/compiler/matlab-runtime.html,下载与自己Matlab版本相应的安装包。
2、安装
解压安装包,然后运行setup.exe,安装过程很简单,就是文件拷贝。
注意:安装位置随意,不用和Matlab放在一起,这里安装到H:MATLAB Runtime。
3、解压MATLABWebAppServer.zip
在Matlab安装目录下找到MATLABWebAppServer.zip,一般路径为
H:MatlabR2019btoolboxcompilerdeploywin64MATLABWebAppServerSetupoffline
在任意位置新建一个文件夹,将以上文件解压到那里。
4、启动服务
在保证环境配置正确的前提下,才能启动服务,检查环境变量是否存在以下路径
右键MATLABWebAppServer.exe使用管理员身份运行
有两个选项:
- Register the web apps service using a default account:使用默认账户注册,账户名为MwWebAppsGuestR2019b,服务名为MATLAB Web Apps (R2019b)
- Register the web apps service using an existing local account:使用已存在的本地账户和密码注册
直接选择第一项即可,点击Register后即可创建服务,服务创建后自动启动
如果没有启动,切换到Configure and Run,点击Start。
以上选项的意思如下:
a.启动/停止服务
b.打开web apps的主页
c.打开包含web app文件(.ctf)的文件夹
d.打开服务器log文件夹
e.指定端口,默认9988
f.启动超时,定义请求app准备新会话的最长时间
g.会话超时。当会话开始运行并且打开浏览器选项卡时,周期性握手消息将让服务器知道用户仍然对会话感兴趣。如果由于计算机休眠或网络断开等原因而放弃了会话,则此间隔将定义会话在服务器上保持存活的时间。
h.启动SSL,使用HTTPS
以上端口、超时等设置可以修改,修改后点击Apply保存设置。
5、打开App
点击Open Home Page,打开服务主页如下:目前还没有app,所以显示为空
6、停止服务
如果要停止服务,在Configure and Run页面点击Stop;
如果要注销服务,在Service Registration页面点击Unregister。
注意:服务器最多支持打开32个会话,但由于尺寸的限制,实际上要比32小。