Я следовал за ответами на вопрос , перечисленный здесь , но все еще не могу решить свою проблему.
У меня есть виртуальная среда для python 2.7 в / var / www / app / env, и после ее активации он по-прежнему показывает тот же запущенный python, который был до того, как я активировал среду. Для обоих результат для which python
:
/usr/bin/python
но я бы хотел, чтобы это было /var/www/app/env/bin/python
Какие изменения необходимо внести, чтобы это происходило каждый раз, когда я активирую свою среду?
ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ
Это на RHEL 4.8
и Python 2.7.2
. Мой .bashrc
файл находится ниже:
# .bashrc
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# Uncomment the following line if you don't like systemctl's auto-paging feature
:
# export SYSTEMD_PAGER=
# User specific aliases and functions
source /var/www/app/env/bin/activate
Нет другого файла профиля.
При активированной виртуальной среде echo $PATH
выдает:
/var/www/app/env/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/ec2-user/.local/bin:/home/ec2-user/bin
При деактивированном, echo $PATH
выводит следующее:
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin
UPDATE
Я выполнил следующие шаги, но изменений не было:
В файл activate
для виртуальной среды добавлено следующее:
export PYTHONPATH="/var/www/dwm/dwmenv/bin/python"
export OLD_PYTHONPATH="$PYTHONPATH"
Добавлено следующее к функции deactivate()
в том же файле
export PYTHONPATH="$OLD_PYTHONPATH"
Деактивировал среду и снова активировал ее, но без изменений!