托管您的Django Web应用程序在pythonanywhere上!
#html #网络开发人员 #python #django

在这里如何免费在Pythonanywhere上托管Django Web应用,如果您问我,这真是太好了!在这篇指导中,我将以my portfolio/about me website为例。您可以找到源代码here

创建网络应用本身ð�ð»

首先,您将需要一个功能齐全的Django Web应用程序(虽然您需要在Django中设置任何生产的内容!)。接下来,您还需要在GitHub上进行项目,最后确保您的项目中有一个requirements.txt文件。您可以使用pip freeze > requirements.txt创建此。

旁注:您可能想知道为什么我将Django用于看似静态的网站。我之所以使用Django,是因为我选择使用Github REST API动态更新我的存储库。我也想在某个时候添加一个博客部分,所以自然而然地,Django会有所帮助。

好吧,让我们进入它!

从pythonanywhere开始

最初,您希望在PythonAnywhere上撰写帐户。创建帐户后,您将显示一个基本的仪表板。单击新的控制台,创建一个新的bash控制台,然后克隆您的项目。

然后,创建一个虚拟环境,并使用pip install -r requirements.txt安装Django和任何其他依赖关系。

重要说明: 请注意用于创建虚拟环境的Python版本。您将稍后再需要!

现在,导航返回仪表板,然后返回到Web选项卡。从那里创建一个新的Web应用程序,然后选择Manual Configuration选项(不是Django选项),以及用于创建虚拟环境的Python版本。

毕达尼亚的文件结构ð

在我们进一步走之前,我想解释pythonanywhere的文件结构。最初,这对我来说是非常困惑的,所以希望我能帮助您避免尝试自己弄清楚的斗争!

如果您从仪表板导航到Files选项卡,则会看到目录列表。在此时间点,您应该查看看起来像这样的文件结构:

  • .cache/ .local/ .virtualenvs/ mydjangowebapp/
  • myvirtualenv/

当然,MyDjangoWebAppMyVirtualEnv将被称为其他东西,但是您明白了。顺便说一句,所有这些目录都是home/MyUserName的子目录。

与您的想法相反,我们实际上不需要触摸.cache.local.virtualenvs!这些只是Pythonanywhere产生的目录。就其价值而言,我只是完全忽略了其余设置的这些目录。我们将与之互动的唯一目录是您添加的目录,即MyDjangoWebAppMyVirtualEnv

与Pythonanywhere的更多设置ð

现在,您(希望)您会更多地了解文件系统,我们可以继续。设置Web应用程序后,在Web选项卡的Virtualenv部分中输入虚拟环境的名称和路径。您还可以选择在Code部分中输入代码的路径。

WSGI文件配置ð

之后,我们将编辑WSGI文件。这是它变得有些棘手的地方。您会编辑项目的WSGI文件,您将编辑Pythonanywhere。转到“代码”部分,查找WSGI配置文件的路径,然后打开。

一旦您在那里,到处都有很多评论。您可以删除除Django部分以外的所有内容。现在,请确保您在Django部分中取消所有内容。完成后应该看起来像这样:

#+++++++++++ DJANGO +++++++++++
import os
import sys

# assuming your django settings file is at '/home/MyUserName/mysite/mysite/settings.py'
# and your manage.py is is at '/home/MyUserName/mysite/manage.py'
path = '/home/MyUserName/TOBECOMPLETED_1'
if path not in sys.path:
    sys.path.append(path)

os.environ['DJANGO_SETTINGS_MODULE'] = TOBECOMPLETED_2.settings'

# then:
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

现在,我适当地使您感到困惑,让我解释一下。 TOBECOMPLETED_1应替换为Root Project的名称。 TOBECOMPLETED_2不应用您的项目的名称替换,而应使用Root Project的实际项目目录。

如果这听起来有些困惑,请以my repository为例。例如,TOBECOMPLETED_1将设置为personal-websiteTOBECOMPLETED_2将设置为personal_website。设置此设置后,请确保保存文件(右上),然后返回到Web Tab。

完成pythonanywhere设置ð©

您快要完成了!最后要做的是设置您的数据库(如果您使用一个)。虽然我自己没有设置一个,但这里是pythonanywhere所说的:

,如果像大多数站点一样,您的网站使用数据库,则需要设置该网站。转到Consoles选项卡,启动bash控制台,使用CD导航到您的Django Project的Manage.py Lives的目录,然后运行`./manage.py migrate。

现在,返回到Web选项卡,然后转到您的Web应用程序。单击Green Reload site图标。您现在应该启动并运行!不过,最后一件事,如果您遇到任何错误或网站不会加载,请检查日志文件!

关闭ð

我希望该小指南能帮助您在Pythonany Where设置您的第一个Django Web应用程序!请随时查看我在Pythonanywhere托管的网络应用:https://kureal.pythonanywhere.com/home/

如果我犯了任何错误,或者您有任何想法/评论,请随时发表评论!

与我联系: