我试图在Ubuntu上安装Apache、Python和Django的故事(2)
在困难的时候,我决定不做过于繁琐的事情,而是尽可能做最简单的事情。这仅仅是个备忘录。
首先需要安装pip3。
$sudo apt install python3-pip
$pip3 install --upgrade pip
pip是一个用于管理Python包的系统,本身是用Python编写的。
由于Python2系和Python3系有很多不同之处,所以有pip(用于Python2)和pip3(用于Python3)两个版本。
在这里我们使用pip3版本。
在没有任何包的情况下,安装pip3也会同时安装Python3.5系列(截至2017年10月27日)。
Django 的安装
$pip3 install django
$apt install python-django-common
$django-admin --version
请使用之前安装的pip3来安装Django。
为了预防起见,请确认版本并确保安装成功。
安装apache2
$sudo apt-get update
$sudo apt-get install apache2
$apt-get install apache2-dev
$systemctl start apache2
安装apache2和apache2-dev。如果没有安装apache2-dev,则安装mod_wsgi将失败。
启动apache2后,从web浏览器访问localhost,确保能够正确显示。
安装mod_wsgi
$pip3 install mod_wsgi
$sudo mod_wsgi-express install-module
建议使用pip命令安装mod_wsgi模块,它能够连接apache和python。
$mod_wsgi-express install-module
对于Apache的配置,会出现路径。
创建Django项目
$mkdir /home/django
$cd /home/django
$django-admin startproject proj1
这次是在这样的环境下进行的。
虽然似乎推荐在虚拟环境等中进行…
django等字符串可以按您喜欢的方式进行替换,没有问题的。
将apache和django进行连结
$vi /etc/apache2/sites-available/django.conf
创建 django.conf 文件。
<VirtualHost *:80>
WSGIDaemonProcess proj1 python-home=/usr python-path=/home/django/proj1
WSGIScriptAlias / /home/django/proj1/proj1/wsgi.py process-group=proj1
<Directory /home/django/proj1/proj1>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
</VirtualHost>
请根据各自的环境写入类似的内容。
$vi /etc/apache2/apache2.conf
将以下内容添加至此配置文件的末尾
$sudo mod_wsgi-express install-module
我們會添加出現的字符串。
最后一点
$sudo a2dissite 000-default
$sudo a2ensite django
$systemctl restart apache2
读取设置文件并启动Apache,然后结束。
如果设置成功,当连接到localhost时应该会显示“网页正常工作”。
总结
尝试一次性安装Anaconda库是更加麻烦的。我想使用机器学习库,但似乎只能一个一个地安装。
[笔者追记]
尽管显示出了”It works!”,但是如果保持目前这个状态,django的初始设置什么都还没做,
所以虽然可以访问http://localhost/admin,
但不能进入更深层次的内容。
首先请安装Django的默认数据库SQLite3。