这是交易。我正在开发一个框架,该框架的唯一用户在其服务器(Linux)上极大地破坏了python安装。它们在服务器上都具有多个版本的Python,它们的PYTHONHOME和PYTHONPATH变量指向不同的版本。
由于我的框架将需要Python 2.6,因此我认为分发应用程序的安全方法可能是将预编译的Python版本与应用程序捆绑在一起。为了验证这一理论,我下载了ActivePython,并将所有必需的文件与应用程序捆绑在一起。我的主要脚本叫#!/ vendor / ActivePython2.6 / bin / python。
到目前为止,我已经在不同的服务器发行版上以及在不同的人的服务器上测试了该框架,到目前为止,该框架似乎没有任何问题(尚未)。
我的问题是,这样做是否有任何问题,还有其他选择吗?
我建议反对。您将在32b和64b版本之间,不同的libc版本之间,noexec位置,用于自定义路径的错误的selinux / apparmor配置文件之间遇到问题以及许多其他潜在问题...
除非您打算针对每个单独的发行版,体系结构和版本发布(并测试!)软件包,否则我会说您正在为自己制造问题。备选方案是同时提供两个版本-仅在默认情况下提供框架,并在出现问题的情况下使静态python包可用。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。