部署!
注意 接下来的这节中,有些地方想要弄清楚会有些许困难。请坚持并完成它;部署是网络开发过程中的一个重要的部分。这一节放在本教程的中部,因此您的指导者可以帮助您在使网站上线中的一些小困难。 这意味着如果花大量的时间,您仍然能独立完成这个教程。
到目前为止您的网站只是在您的计算机上可用,现在您将学习如何部署它 ! 部署是在互联网上发布您的应用,使他人可以在网络上访问的过程。:blush:
正如您所学习的,一个网站必须要放到一个服务器上。 在互联网上您可以找到很多的服务器供应商。 我们将使用 PythonAnywhere。 PythonAnywhere 对于一些没有太多访问者的小应用是免费的,所以它对您来说绝对是足够使用的。
另一个我们将使用到的外部服务器是 GitHub,它是一个代码托管服务器。 还有其它的一些服务器,但当今几乎所有的程序员都有 GitHub 帐户,所以您也将会有一个!
这三个服务器对您来说很重要。您可以在本地计算机部署与测试。当您对已做出的改动很满意,您可以将程序的副本提交在 GitHub 上。您的网站会在 PythonAnyWhere 上,并且您可以从 GitHub 获取新的代码的副本并更新它。
Git
注意 如果你已经做过安装步骤了,这里就不需要再做,你可以直接跳到下一章,开始创建你自己的 Git 版本库。
Git 是一个被大量程序员使用的 "版本控制系统"。 此软件可以跟踪任何时间文件的改变,这样你以后可以随时回溯某个特定版本。 有点像文字处理软件中的 "跟踪更改" 功能 (比如,Microsoft Word 或者 LibreOffice Writer ),但更强大。
Git 安装
Git 安装 :Windows
你可以从 git-scm.com 下载 Git。 你可以在所有的安装步骤中点击 " next ",除了这两个步骤:在要求选择编辑器的步骤,你应该选择 Nano ;在名为 "Adjusting your PATH environment" 的步骤,选择 "Use Git and optional Unix tools from the Windows Command Prompt"(底部的选项)。 除此之外,默认值都没有问题。 检出时使用 Windows 风格的换行符,提交时使用 Unix 风格的换行符,这样比较好。
在安装成功结束之后,不要忘记重启命令提示符或者 powershell。
Git 安装: OS X
从 git-scm.com 下载 Git 并且按照下面的指令进行。
注意 假如你是在 OS X 10.6, 10.7, or 10.8 上运行, 你需要从下面的资源安装 git 版本:Git installer for OS X Snow Leopard
Git 安装: Debian or Ubuntu
$ sudo apt install git
Git 安装: Fedora
$ sudo dnf install git
Git 安装: openSUSE
$ sudo zypper install git
- \
忘记创建你的 PythonAnywhere API token。 - 在你的 GitHub URL 报错。
- 如果你看到报错 "Could not find your settings.py"(无法找到你的settings.py), 很可能是因为你没有将你的所有文件添加到 Git, 并且或者你没有成功将他们提交到 GitHub 。再看一看上面的 Git 安装。
- 假如你之前注册了 PythonAnywhere 的账户,并且遇到collectstatic错误,可能是因为使用了旧版SQLite(如3.8.2)。这种情况,注册新账户并尝试上述 PythonAnywhere 部分的命令操作。
如果在访问你的网站时看到一个错误,首先在你的 error log 查找调试信息。你将会在 PythonAnywhere 找到这个链接 "Web" page。看看那里是否有关于错误的信息;最近的信息在底部。
这里也有一些 PythonAnywhere help site 中常见的调试建议(帮助).
请记得,你的教练随时提供帮助!
检查你的网站!
你的网站默认页面应该显示:“ It worked(它正常工作)!”, 就像它在你本地计算机上运行一样。尝试在 URL 末尾添加 /admin/
,你会跳转到 admin 网站,使用用户名和密码登录,你将会看到你可以在服务器上添加新的 Posts (帖子)—— 记住,来自你本地测试数据库的帖子不会被发送到你在线的博客。
如果你创建了一些帖子,你可以回到你的本地项目(不是 PythonAnywhere )。 从这里,你应该在你本地项目上工作以进行更改。这是 web 开发常见的工作流程—— 在本地更改,将更改推送到GitHub,然后将更改拉取到你的在线 Web 服务器。这允许你工作和实验,而不会破坏你的在线网站。这很酷,不是吗?
给自己点个大大的赞!服务器部署是 web 开发中最棘手的部分之一, 它通常要耗费几天时间才能搞定。 但你的网站已经上线,运转在真正的互联网上!
本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。