• 请不要在回答技术问题时复制粘贴 AI 生成的内容
shijingshijing
V2EX  ›  程序员

有什么好的工具能把基于 B/S 的 Web 应用封装成单机版可执行程序的?

  •  
  •   shijingshijing · Dec 18, 2017 · 4867 views
    This topic created in 3106 days ago, the information mentioned may be changed or developed.

    RT,有一个小型的零件登记系统,本来是放在线上的 Web 版,后端是 PHP,用了 CodeIgniter 框架,数据库用的 SQLite。现在想复制一份单机版缺陷零件登记系统的给客户,最好是想弄成.exe 的可执行程序。

    粗略想了一下,相当于这个 exe 里面要封装一个 Apache,单文件数据库,可能还需要封装一个浏览器?数据库想从 SQLite 换成 Access,可能要重新弄个 Adapter。

    各位有什么这方面的经验,还希望多指点指点。

    18 replies    2017-12-20 08:45:14 +08:00
    vance
        1
    vance  
       Dec 18, 2017
    nodejs 可以用 electron, php 不太清楚
    weifding
        2
    weifding  
       Dec 18, 2017 via Android
    用虚拟机,全部打包好。复制到客户那边运行虚拟机,然后开网页。完美
    clino
        3
    clino  
       Dec 18, 2017
    以 XAMPP 为基础来添加然后打包?
    le0rn0
        4
    le0rn0  
       Dec 18, 2017 via Android
    楼上还完美……直接给客户一台电脑,开机执行脚本打开网页更好
    7654
        5
    7654  
       Dec 18, 2017
    USBWebServer 来做可能更方便点
    zetaoyang
        6
    zetaoyang  
       Dec 18, 2017   ❤️ 1
    zjsxwc
        7
    zjsxwc  
       Dec 18, 2017
    不如直接送个小主机给客户
    Shazoo
        8
    Shazoo  
       Dec 18, 2017   ❤️ 1
    CEF3Client+xampp 用 portableapp 的框架打个包。我觉得就可以。
    jadec0der
        9
    jadec0der  
       Dec 18, 2017
    我们以前做过把 B/S 放到离线平板上,在本地 IIS 装上服务端,然后做了个套壳 UWP 应用,里面就是指向固定 url 的 webview
    shijingshijing
        10
    shijingshijing  
    OP
       Dec 18, 2017
    @clino
    @weifding
    @le0rn0
    @zjsxwc
    @jadec0der

    虚拟机,独立的 web server,分离安装 WAMP,XAMPP 都是不行的,只能单点一个 exe,行业用户内网各种奇葩的限制。


    @7654
    USB 口子直接被禁用的。。。Anyway,Thanks


    @zetaoyang
    @Shazoo

    恩,找到了个类似的,PHP Desktop Chrome,哈哈,看那个 Star,很多人有类似的需求啊。。。
    https://github.com/cztomczak/phpdesktop
    sjx95
        11
    sjx95  
       Dec 18, 2017
    Docker 怎么样?
    clino
        12
    clino  
       Dec 19, 2017
    我觉得单独一个 exe 不是不能做,但是非常麻烦吧...
    zjsxwc
        13
    zjsxwc  
       Dec 19, 2017   ❤️ 1
    @shijingshijing #10

    phpdesktop 一堆未解决的 issue 你敢用? star 多只是说明关注的人多,并不说好用
    hnbcinfo
        14
    hnbcinfo  
       Dec 19, 2017   ❤️ 1
    我的网站是.net 开发,iis 服务器,mysql 数据库。用户是局域网使用,所以需要打包成 exe 安装包发布。
    我的解决方案是:
    直接使用打包工具,Advanced Installer,可以打包时配置 iis,创建网站,指定网站物理路径。
    数据库使用 mysql 绿色版,以文件夹形式打包进 exe,同时写脚本创建 mysql 服务,安装过程中执行脚本。
    安装过程,需要用户配置域名,端口等,用户安装完成后网站可以直接访问。不需要专业人员就可以正常安装。

    我估计也有不少支持 Apache 的打包工具,楼主可以研究下。
    shijingshijing
        15
    shijingshijing  
    OP
       Dec 19, 2017
    @hnbcinfo
    已经成功部署了么?听起来很不错的样子。。。
    不过他们内网很烦,每台电脑都装了 Norton 全家桶,不仅有杀病毒的那个 AntiVirus,还有 Norton 的网络防火墙,开 Localhost 作为服务器可能要改防火墙配置,给端口什么的,这样就要找 IT 申请,审批走流程什么的。


    @zjsxwc
    哈哈,刚看到 issue,谢谢提醒。不过其实只要凑合能用就行了,以实现功能为主。
    weifding
        16
    weifding  
       Dec 20, 2017 via Android
    找下嵌入式 php 的资料
    weifding
        17
    weifding  
       Dec 20, 2017 via Android
    or exeoutput for php
    hnbcinfo
        18
    hnbcinfo  
       Dec 20, 2017
    @shijingshijing 一直用着,好几年了,很稳定啊,我们的客户一般是学校,校园内网使用,全国各地都有,为了安装人员方便才这么搞的。
    不过你客户的需求应该是要单机运行,只要代码不是很乱,层次分的清楚,稍微花点功夫,把 web 层替换成桌面程序更好
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2577 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 66ms · UTC 06:19 · PVG 14:19 · LAX 23:19 · JFK 02:19
    ♥ Do have faith in what you're doing.