fay
V2EX  ›  问与答

请教大家如何不暴露源代码的情况下,而将网站出售并部署到对方的服务器上?

  •  
  •   fay · May 23, 2014 · 7819 views
    This topic created in 4379 days ago, the information mentioned may be changed or developed.
    公司要将一个Iaas平台以license的形式授权出售给其他公司,是基于Python和Django的,问下V友是否可以不把源码给对方,而做到网站可以运行,pyc可以做到吗?
    21 replies    2014-05-23 23:08:19 +08:00
    thinkif
        1
    thinkif  
       May 23, 2014   ❤️ 1
    比如, 核心算法用C之类的语言写
    lsongdev
        2
    lsongdev  
       May 23, 2014   ❤️ 3
    打包到虚拟机里 . 然后提供接口, 让他绑定到 Nginx 上 .
    fay
        3
    fay  
    OP
       May 23, 2014
    @thinkif 核心的组件的确是用C实现的,只是领导不懂技术,签合同时写明所有代码都不是给源码,所以网站python实现的部分代码还是没办法
    fay
        4
    fay  
    OP
       May 23, 2014
    @song940 挺好的思路,不过所有的硬件设备都是对方公司提供的,而且使用场景应该是局域网内部使用的
    lsongdev
        5
    lsongdev  
       May 23, 2014   ❤️ 2
    @fay 不冲突啊 , 在他们的服务器上安装 vagrant , 然后你把项目打包成 box 文件 , 到服务器上 vagrant add box app.box , 然后创建一个低权限用户 , 只能修改指定目录下的配置文件 . 取消该用户的密码 . 给你们的客户生成个 Key , 作为 license , 登陆这个虚拟机 .

    剩下的 , 自己想吧 ...
    fay
        6
    fay  
    OP
       May 23, 2014
    @song940 恩,貌似可行,我再细化下解决方案,非常感谢
    ericls
        7
    ericls  
       May 23, 2014 via Android
    直接pyc文件
    fay
        8
    fay  
    OP
       May 23, 2014
    @ericls 恩,的确是可以,不过@song940 的方法比pyc的更有优势,因为方便我们的维护和调试,也谢谢你
    arcas
        9
    arcas  
       May 23, 2014
    可以pyc + @song940 的方法.
    shiny
        10
    shiny  
    PRO
       May 23, 2014
    @song940 估计文件系统还得加密? vagrant 实际上是个 virtualbox 虚拟机,可以重置 root 密码或者复制出文件来。
    Shared
        11
    Shared  
       May 23, 2014
    你还可以考虑用 Cython
    Tink
        12
    Tink  
    PRO
       May 23, 2014 via iPhone
    @song940 这个方法挺棒的,而且还是多语言通用
    wtbhk
        13
    wtbhk  
       May 23, 2014
    咦,python不是可以编译成二进制吗
    loading
        14
    loading  
       May 23, 2014 via Android   ❤️ 1
    @song940 能防止本地单用户模式登陆?root权限很容易取得吧!

    虚拟机只有 pyc 是必须的
    glasslion
        15
    glasslion  
       May 23, 2014
    @ericls 给pyc还不如给源代码
    lsongdev
        16
    lsongdev  
       May 23, 2014   ❤️ 1
    @shiny 看来文件系统加密是有必要的 .
    @loading `本地单用户模式登陆` 问题也是可以解决的.
    love
        17
    love  
       May 23, 2014
    pyc文件反编译出来和源文件真的是没有区别,我试过。

    听说用pypy可以真正编译,那个应该就不会有问题了。
    bsbgong
        18
    bsbgong  
       May 23, 2014
    好问题,学习了
    收藏
    loading
        19
    loading  
       May 23, 2014
    @song940 期待分享该方面经验!
    dorentus
        20
    dorentus  
       May 23, 2014
    如果我没记错的话,Github Enterprise 就是用虚拟机镜像(文件系统加密)的形式分发的~
    Comdex
        21
    Comdex  
       May 23, 2014 via Android
    对于py我想说用golang就不会有这种问题
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   4926 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 55ms · UTC 09:37 · PVG 17:37 · LAX 02:37 · JFK 05:37
    ♥ Do have faith in what you're doing.