首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Django项目复制到根服务器不起作用

将Django项目复制到根服务器不起作用
EN

Stack Overflow用户
提问于 2014-06-17 09:00:21
回答 2查看 98关注 0票数 0

我希望你能帮助我。

我一直在为我与Django和Lightning Fast Shop工作的公司建立这个网络商店。

它现在基本上已经完成了,我已经在我的PC上运行了一台虚拟的ubuntu机器。因为让我的电脑一直开着很烦人,所以其他人可以访问这个网站,所以我想把它部署在根服务器上。所以我买了一个JiffyBox,并在上面安装了ubuntu。

我设法让Gnome在它上面工作,并用VNC连接到它。然后,我通过FTP将完成的项目上传到服务器。

现在我想我只需要下载Django-LFS,创建一个新项目,并用我完成的项目文件替换项目文件。

当我在我的虚拟机上测试它时,它起作用了。

令我失望的是,它不能在根服务器上工作。当我尝试运行"bin/django runserver“时,我得到了一条错误消息"bash: bin/django: Permission denied”,而当我尝试使用'sudo‘时,我得到了"sudo: bin/django: command not found“。

然后我意识到我下载了一个更新版本的Django-LFS,并用同样的版本试了试,但没有用。

我开始变得非常沮丧,如果有人能帮助我解决我的问题,我会非常感激。

你好,克里托斯。

EN

回答 2

Stack Overflow用户

发布于 2014-06-17 15:00:29

我不知道什么是“根”服务器。但是您不能仅仅通过复制文件来部署Django :您需要配置need服务器。该文档具有非常强的comprehensive explanation

票数 0
EN

Stack Overflow用户

发布于 2014-06-17 15:36:12

我知道其中的一些建议可能是显而易见的,但永远不会知道:

  • 您是否更新settings.py中的所有设置?(静态文件的路径,您使用的project...)
  • Wich服务器的路径?django服务器?阿帕奇?nginx ?
  • Do你对项目中的所有文件都有权限吗?你应该检查文件的根所有者是你拥有的用户,而不是根。如果所有者是超级用户,则在超级用户拥有的每个文件中都会出现此权限问题。
  • 您是否正在使用uwsgi?
  • 您是否已在虚拟机中安装了所有应用程序?
  • 您是否已安装与虚拟机中已安装的版本相同的应用程序?

当我将一个项目从虚拟机移动到真实服务器时,我会执行以下步骤:

  • 查看settings.py和更新路径
  • 检查web服务器可能使用的文件夹中的权限
  • 我在一个txt文件中有一个包含软件包和版本的列表,让我们称之为packages.txt
  • I使用pip install -r packages.txt
  • I安装所有软件包总是使用apache/nginx,因此我必须将虚拟主机更新为新路径
  • 如果我使用的是
  • ,请更新uwsgi设置

<代码>F235

要降级一些pip包,您可能需要删除egg文件,因为如果您卸载一个包并重新安装它,尽管您使用的是pip install package==VERSION,如果您已经下载了一个包,pip将安装此包,即使版本不同。

要检查pip包的实际版本,请使用pip freeze

要将所有pip包导出到一个文件,并将它们导入到其他位置:pip freeze > packages.txt nad要从此文件pip install -r packages.txt安装包

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24254300

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档