您的位置:首页 > 运维架构 > Apache

Python+Django+apache2+ubuntu构架web服务器实战

2017-09-03 19:24 519 查看

1.系统环境说明

ubuntu17.04

python 2.7.13

django 1.8.16

apache2

系统环境构架http://www.linuxidc.com/Linux/2014-05/101444.htm看这个博客

2.建立djangowebapp

不需要我进行赘述,请移步官方文档http://python.usyiyi.cn/translate/django_182/index.html自行学习

完成django项目的后,并使用django自己测试服务器运行成功后。

3.apache2使用

apache2的安装位置在 /etc/apache2

在ubuntu的命令行中 打上 sudo service apache2 start

如果上一步不弹出错误提示 在浏览器中输入 127.0.0.1:80出现Apache的运行界面

4.将已完成的django项目部署到Apache2的web服务器上

注意:我的django项目根目录(也就是有manage.py的那个目录)为/var/blog

1.使用 sudo vim ports.conf 打开 /etc/apache2/ports.conf 文件

注意,可能需要学习vim的使用方法http://www.cnblogs.com/lijia0511/p/5644566.html看这里

2.在ports.conf 中加上一行 Listen 端口号,端口可以随便选不要与你系统当前的冲突就好, 比如我使用的是 8090 端口

3.使用 sudo vim xxx.conf 在 /etc/apache2/sites-available 文件夹新建一个xxx.conf 文档, xxx可以随便取名

xxx.conf 的内容为

<VirtualHost *:8090>
#这个参数是用来将Apache和django连接起来的
WSGIScriptAlias / /var/blog/blog/wsgi.py
#这个参数上让你确认错误日志的存放地点,没有它你将不能知道错误发生在了那
ErrorLog  /xxx/xxx.log

<Directory /var/blog/blog>
<Files wsgi.py>
#apache2 2.4以前的版本与此处不同,有需要自行搜索
Required all granted
</Files>
</Directory>
</VirtualHost>


5 . 修改 apache2.conf 它就在Apache2的根目录下

注意:此处极为重要

在这个文件中

首先

#这个更改使得所以目录发起的请求都被允许,在实际中会造成安全问题
<Directory / >
Required all denied

改为
Required all granted


然后再加一行

#没有这个参数Apache找不到你的webapp settings模块
WSGIPythonPath /var/blog


6 .运行sudo a2ensite xxx.conf

7 . 运行 sudo service apache2 restart

8 . 在浏览器中输入 127.0.0.1:8090

现在你就能看到django的运行画面了

5.补充说明

完成上面的东西后,你的网站可能无法使用css和js ,如何使用这些请自行查找 django 的wsgi部署说明

善用google,你的问题会更快解决。

最后,如果我有什么遗漏和错误,请评论或留言
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐