Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将Django项目复制到根服务器不起作用_Python_Django_Deployment - Fatal编程技术网

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

Python 将Django项目复制到根服务器不起作用,python,django,deployment,Python,Django,Deployment,我希望你能帮助我 我一直在为我与Django和Lightning Fast Shop合作的公司建立这个网店 现在基本上已经完成了,我已经在我的电脑上运行了一个虚拟ubuntu机器。因为它让我的电脑一直开着很烦人,所以其他人可以访问这个网站,我想把它部署在根服务器上。所以我买了一个JiffyBox并在上面安装了ubuntu 我设法让Gnome处理它,并用VNC连接到它。然后我通过FTP将完成的项目上传到服务器 现在我想我只需要下载Django LFS,创建一个新项目,并用我完成的项目文件替换项目文

我希望你能帮助我

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

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

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

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

当我在我的虚拟机上测试它时,它工作了

令我失望的是,它在根服务器上无法工作。当我尝试运行bin/django runserver时,我收到一条错误消息,说bash:bin/django:Permission denied,当我尝试使用“sudo”时,我发现sudo:bin/django:command未找到

然后我意识到我下载了一个更新版本的Django LFS,并用相同的版本进行了尝试,但没有结果

我开始感到非常沮丧,如果有人能帮我解决问题,我会非常感激


你好,Krytos。

我不知道根服务器是什么。但是,部署Django并不只是复制文件:您需要配置Web服务器。该文档有一个非常重要的功能。

我知道有些技巧是显而易见的,但永远不知道:

是否更新settings.py中的所有设置?静态文件的路径,项目的路径。。。 你用的是哪台服务器?django服务器?阿帕奇?nginx? 您对项目中的所有文件都有权限吗?您应该检查文件的所有者是否是您拥有的用户,而不是root用户。如果所有者是root用户,则在root用户拥有的每个文件中都会出现此权限问题。 你在用uwsgi吗? 你在你的虚拟机上安装了所有的应用程序了吗? 你在你的虚拟机上安装了相同的版本吗? 当我将项目从VM移动到real server时,我会重复以下步骤:

查看settings.py和更新路径 检查web服务器可能使用的文件夹中的权限 我有一个txt文件中包含软件包和版本的列表,我们称之为packages.txt 我使用pip安装-r packages.txt安装所有这些软件包 我总是使用apache/nginx,因此我必须将virtualhost更新到新路径 如果我正在使用uwsgi,请更新uwsgi设置 要降级某些pip软件包,您可能需要删除egg文件,因为如果您卸载并重新安装一个软件包,尽管您使用的是pip install package==VERSION,但如果您已经下载了一个软件包,即使版本不同,pip也会安装这个软件包

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


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

你到底为什么运行bin/django runserver?这对你有用吗?