从浏览器地址栏执行虚拟主机上的脚本,环境变量与SSH环境不一样。

发布于 2022-08-24 01:30:14 字数 382 浏览 24 评论 0

举个例子,虚拟主机上没有我使用的一个python第三方包,由于没有root权限,所以我只能自己编译python后安装在$HOME目录的.local路径上,并把路径export到.bashrc ,当我通过SSH访问时,使用easy_install会自动安装到.local上,能够正常import。但是如果我从浏览器执行虚拟主机上的python脚本,则又会变成虚拟主机本身的python环境,无法找到我安装的包。

我想到的办法是,在python脚本中的最开始添加路径,然后才import,但是由于我自己easy_install了很多包,一个个加进来很麻烦,同时也不利于乎开发维护,因为我一般在自己本机调试完后才scp到虚拟主机,这样我每次都要修改才上传,十分麻烦。

请问有没有简单的办法来把脚本的执行环境,切换到用户自定义环境上?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

伴我心暖 2022-08-31 01:30:14

找到一个办法,把脚本解释器由相对改成绝对:
把这一行

#!/usr/bin/env python

改成

#!/home/user/.local/python2.7/bin/python

这样每次上传时仍需改动,但比一个个包添加好。期望有更好的办法。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文