几天来我一直在为这个问题苦苦挣扎,似乎无法在任何地方找到答案。
我需要从 Python2.7 运行 numpy 包,因此在我的 Bluehost 帐户上安装了 Python 2.7(按照 Bluehost 说明)。然后,我使用 python2.7 easy_install 在正确的 site-packages 文件夹中安装 numpy。从命令行调用'python'显示调用了Python2.7,并且可以毫无问题地导入numpy。
但是,当我从我的站点调用 python 脚本时(即使用 CGI 形式),我发现它调用的是 python2.6,并且无法再导入 numpy。
我怀疑我的.bashrc有问题,如下: #.bashrc
# User specific aliases and functions
alias mv='mv -i'
alias rm='rm -i'
alias cp='cp -i'
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# Python stuff
export PATH=$HOME/python/Python-2.7.2/:$PATH
export PYTHONPATH=$HOME/python/lib/python2.7/site-packages:$PYTHONPATH
Web 服务器 CGI shebang 是否需要指向我自己安装的 Python?
干杯, 休
最佳答案
好吧,我明白了。问题出在我的 python 上,而不是服务器的 CGI 配置上。基本上,程序的第一行(例如“#!/usr/local/bin/python”)指向用于该特定脚本的可执行文件的位置(我认为这只是一条注释!)。由于在 Bluehost 上运行 Py2.7.2 需要安装 2 个版本(2.6 和 2.7),后一个版本需要位于第一行,否则脚本将使用“默认”2.6。
简而言之,解决方案是改用“#!/home4/username/python/Python-2.7.2/python”。
关于python - Bluehost:Python/CGI shebang 需要指向我安装的 Python?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24824163/