繁体   English   中英

如何在/ var / www / html / project_name文件夹中的virtualenv中通过pip安装Django?

[英]How to install Django with pip inside a virtualenv in /var/www/html/project_name folder?

我正在将Ubuntu 15.04与Python 2.7,pip 1.5.6和virtualenv 1.11.6一起使用。

我将在/var/www/html/project_name内部创建一个Django项目(并在该目录中工作),以便将其与Apache2一起使用。

我在project_name文件夹中创建了一个名为venv的虚拟环境,用于同步。

激活虚拟环境后,我无法运行pip install django因为我收到“权限被拒绝”消息。 因此,我尝试使用命令sudo pip install django ,但这将在全局安装Django。

因此,运行which pip ,我得到/var/www/html/project_name/venv/bin/pip

但是运行sudo which pip ,我得到/usr/bin/pip

有人对如何在虚拟环境中安装Django(或任何其他软件包)有任何想法吗?

PS:我知道可以运行sudo venv/bin/pip install django ,但这似乎不是很有用。

可能是您的麻烦在于您没有对此/var/www/html/project_name目录的写权限。 您的选择是:

  1. 递归更改权限,以便您确实具有写入该目录的权限。

  2. 运行以下命令:

$ sudo su
# . venv/bin/activate
# pip install

只是添加大家都在说的话,我略读了一遍:从来没有将敏感的内容(包括django项目)放在文档根目录下。 您可以将其存储在/var/www/scripts之类的目录下,但不要将其放在文档根目录下。

部署的另一种方法是使用像gunicorn这样的东西作为“主要” web服务器,然后让世界上可见的web服务器(例如apache)反向代理到gunicorn。 我已经使用nginx做到了这一点,并且设置起来非常容易,唯一的缺点是您必须在系统的初始化脚本中设置一些额外的内容才能启动gunicorn。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM