一步一图,VirtualBox中搭建[Ubuntu + Python + Apache2 + mod_WSGI + Django]环境(二)

欢迎回来,愿猪神保佑你~

在上一篇中,我们配置了Apache server并进行了验证。在本篇中,我们将配置mod_wsgi模块并使用实例来验证。

步骤一: 安装mod_wsgi模块

首先我们使用命令'apt install libapache2-mod-wsgi'来安装mod_wsgi模块。

一步一图,VirtualBox中搭建[Ubuntu + Python + Apache2 + mod_WSGI + Django]环境(二)_第1张图片
安装mod_wsgi

如何验证mod_wsgi已经安装好了呢?我们使用'ls /usr/lib/apache2/modules/'命令。

一步一图,VirtualBox中搭建[Ubuntu + Python + Apache2 + mod_WSGI + Django]环境(二)_第2张图片
列出Apache的模块

如何验证模块已经被启用(enable)了呢?

一步一图,VirtualBox中搭建[Ubuntu + Python + Apache2 + mod_WSGI + Django]环境(二)_第3张图片
Available & enabled

---我们使用'ls /etc/apache2/mods-available/'命令列出可用的(available)模块。
---我们使用'ls /etc/apache2/mods-enabled/'命令列出启用的(enabled)模块。
---在可用的/启用的模块列表中,我们都看到了wsgi.confwsgi.load,说明一切OK!

步骤二: 写一个wsgi脚本

一步一图,VirtualBox中搭建[Ubuntu + Python + Apache2 + mod_WSGI + Django]环境(二)_第4张图片

我们切换到/var/www/下,并查看它现在的内容。我们将在这里存放我们即将建立的web-app。这两个简单的命令想必很多Linux同学都看腻了,但为了更好的连续性,我们还是列出来。
---'cd /var/www/', 切换到/var/www目录
---'ll', 列出当前目录的内容
在这个目录下,新建一个web1文件夹,则现在目录结构如下。

一步一图,VirtualBox中搭建[Ubuntu + Python + Apache2 + mod_WSGI + Django]环境(二)_第5张图片
'mkdir web1'之后

在【web1】文件夹内,新建一个文件【simple.wsgi】内容如下。

一步一图,VirtualBox中搭建[Ubuntu + Python + Apache2 + mod_WSGI + Django]环境(二)_第6张图片
simple.wsgi

使用命令'll web1/'来看看【web1】里都有啥。

一步一图,VirtualBox中搭建[Ubuntu + Python + Apache2 + mod_WSGI + Django]环境(二)_第7张图片

步骤三: 修改配置文件,指向wsgi脚本

接下来,我们需要切换到'/etc/apache2/sites-available'目录中,修改配置文件,来指向我们刚刚创建的wsgi文件。

一步一图,VirtualBox中搭建[Ubuntu + Python + Apache2 + mod_WSGI + Django]环境(二)_第8张图片
cd /etc/apache2/sites-available/

我们要修改的就是这个'000-default.conf',先看看它的内容。

一步一图,VirtualBox中搭建[Ubuntu + Python + Apache2 + mod_WSGI + Django]环境(二)_第9张图片

可以看到,系统监听80端口,默认将文件存放在【/var/www/html/】下。现在修改这个文件,增加下图所示的内容。

一步一图,VirtualBox中搭建[Ubuntu + Python + Apache2 + mod_WSGI + Django]环境(二)_第10张图片
增加配置项

---WSGIScriptAlias /try /var/www/web1/simple.wsgi是说,当有人访问'localhost/try’这个地址的时候,将访问请求转交给'/var/www/web1/simple.wsgi'这个文件,由它来处理这个请求。
---这节,是告诉系统【/var/www/web1】这个文件夹可以被访问。

步骤四: 启用修改后的配置文件

我们已经修改了配置文件,增加了指向我们写的wsgi文件的信息,接下来我们需要
---启用修改后的配置文件,命令'a2ensite 000-default.conf'
---重新启动Apache服务,命令'service apache2 restart'

一步一图,VirtualBox中搭建[Ubuntu + Python + Apache2 + mod_WSGI + Django]环境(二)_第11张图片
启用修改后的配置
一步一图,VirtualBox中搭建[Ubuntu + Python + Apache2 + mod_WSGI + Django]环境(二)_第12张图片
查看error.log

Apache的日志信息存储在【/var/log/apache2/】目录中。我们查看其中的'error.log'文件可以看到,当我们'service apache2 restart'后,服务器接收了一个SIGTERM信号并重新启动了。在重新启动的过程中,服务器确实加载了wsgi模块。
现在,打开浏览器访问'http://localhost/try',万年的'hello world'出现了~

一步一图,VirtualBox中搭建[Ubuntu + Python + Apache2 + mod_WSGI + Django]环境(二)_第13张图片

我们可以从Apache日志目录下的'access.log'文件中看到相应的访问记录。

一步一图,VirtualBox中搭建[Ubuntu + Python + Apache2 + mod_WSGI + Django]环境(二)_第14张图片
Apache 访问日志

至此,我们成功安装了mod_wsgi模块;自己编写了一个简单的wsgi文件;修改配置文件指向我们编写的wsgi文件;成功访问了我们自定义的路径并在日志文件中看到了相应的线索。

在下一篇中,我们将安装并部署Django.

你可能感兴趣的:(一步一图,VirtualBox中搭建[Ubuntu + Python + Apache2 + mod_WSGI + Django]环境(二))