利用WSGI来部署你的网站#

当需要部署你的django项目的时候,可以使用apache+python来部署访问你的网站。

由于网上的有关的都是老版本的。所以这里使用apache2.4python3.4来做示范。

默认已经安装好了apache2.4 和 python3了。

1.准备好你的网站。##

这里我新建一个空的网站。

django-admin startproject mysite

django框架已经为你做好了一切包括wsgi.py已经创建好了。

2.安装mod_wsgi.so##

参考文档

从官方文档下载了源码后,根据提示一步一步做就行了。

需要注意的是:

  • 需要事先安装apxs
  • 如果使用的是python3, 那么需要制定python3的路径(系统默认python2的情况下)
  • apache2.4更新了传统的配置,所以在加载模块的时候最好不要直接在apache2.conf中添加。

3.添加mod_wsgi.so##

经过上面的步骤,你应该能在/usr/lib/apache2/modules下面看到mod_wsgi.so这个文件了。

如果在apach2.4以前,只需要在配置文件中添加下面代码就可以了。

LoadModule wsgi_module modules/mod_wsgi.so

但是在apache2.4中,已经将原来的一个配置文件细分成了多个。这个具体可以参考官方文档

所以我们要在 /etc/apache2/mods-available下面添加一个文件:wsgi.load, 然后在里面写上:

LoadModule wsgi_module /usr/lib/apache2/modules/mod_wsgi.so

然后在mods-enabled中添加上述文件的软连接

也可以在终端中输入一下命令:

a2enmod wsgi

这样重启apache之后就可以了。

4.配置你的apache##

在conf-available中添加一个新的文件:mysite.conf


WSGIScriptAlias / /home/wenning/mysite/mysite/wsgi.py WSGIPythonPath /home/wenning/mysite/mysite <Directory /home/wenning/mysite/mysite> <Files wsgi.py> Require all granted </Files> </Directory>

同理,要启用这个配置需要:

a2enconf mysite

重启后就可以了使用了。

最后##

在浏览起中打开就可以看到效果了。

可以看到apache2.4中利用模块化的配置文件方法,可以很方便地使用, 更加灵活方便了。

利用WSGI来部署你的网站的更多相关文章

  1. 手把手教你利用Docker+jenkins部署你的网站

    更新服务器的安装源为阿里的源,参考链接:https://blog.csdn.net/js_xh/article/details/79166655 安装docker; 1 更新资源 sudo apt-g ...

  2. Jenkins持续集成(下)-Jenkins部署Asp.Net网站自动发布

    环境:Windows 2008 R2.Jenkins2.235.1.Visual Studio 2017: 概要 前面写过一篇文章,<自动发布-asp.net自动发布.IIS站点自动发布(集成S ...

  3. IIS 7 Web服务器上部署ASP.NET网站(转)

    IIS 7 Web服务器上部署ASP.NET网站小记 摘自:http://swanmsg.blog.sohu.com/162111073.html 网上查找了很久关于iis7配置asp.net配置问题 ...

  4. 如何在IIS6,7中部署ASP.NET网站

    http://www.cnblogs.com/fish-li/archive/2012/02/26/2368989.html 阅读目录 开始 查看web.config文件 在IIS中创建网站 IIS6 ...

  5. 如何在IIS6,7中部署ASP.NET网站(转载)

    查看web.config文件 web.config通常会放在网站的根目录,这个文件中包含了一最重要的网站运行参数.比如: connectionStrings,httpHandlers,httpModu ...

  6. 在CentOS 上搭建nginx来部署静态页面网站

    在centOs 上搭建nginx来部署静态页面网站 一.部署服务器环境 nginx:轻量级.高性能的HTTP及反向代理服务器,占用内存少,并发能力强,相比老牌的apache作为web服务器,性能更加卓 ...

  7. Nginx部署多个网站

    为节省资源,通常一个服务器会运行多个网站,通常一个服务一个IP,多个域名共用一个IP,多个域名共用一个端口(通常是80端口). 这时候需要一台服务器部署多个网站,多个网站共用一个IP,共用一个80端口 ...

  8. 在IIS中部署Asp.Net网站

    在IIS中部署Asp.Net网站 1.添加IIS或者删除IIS,在控制面板=>程序和功能=>打开或关闭功能 启动iis,右键计算机=>管理=>服务和应用程序=>Inter ...

  9. Ubuntu 12.04使用uginx+fastcgi-mono-server2部署asp.net 网站

    Ubuntu 12.04使用uginx+fastcgi-mono-server2部署asp.net 网站 1.安装nginx和mono-fastcgi-server2 sodu apt-get  in ...

随机推荐

  1. Hdu1097(计算a的b次幂最后一位数值)

    #include <stdio.h> #include <math.h> int main() { int Num1,Num2; while(scanf("%d %d ...

  2. awk的日志模块追加日期时间字段的方案

    function test() { i = ) { system("sleep 1") "date +'%Y-%m-%d %H:%M:%S'" | getlin ...

  3. repo init 时gpg: 无法检查签名:找不到公钥

    i found a solution here: http://www.marshut.com/wrrts/repo-release-1-12-4.html Sorry, I realized tod ...

  4. 新技术:Qt for Native Client (and emscripten)

    http://blog.qt.io/blog/2015/09/25/qt-for-native-client-and-emscripten/

  5. Kill 锁,1222:已超过了锁请求超时时段,

    应该是你的表体积很大,处理的时候费事,因为几乎所有数据库操作都需要加或多或少的锁,所以会超时.首先你可以使用select * from sys.sysprocesses where blocked&l ...

  6. c++命名空间瀑布

    一般情况,函数放在命名空间外,命名空间内部放置声明 #include<iostream> using namespace std; //一般情况,函数放在命名空间外,命名空间内部放置声明 ...

  7. iOS 原生二维码扫描,带扫描框和扫描过程动画

    在代码中使用了相对布局框架Masonry 准备两张图片,一张是扫描边框,一张是扫描时的细线分别命名 scanFrame.png和scanLine.png并提前放入工程 导入相对布局头文件 #defin ...

  8. C# 酒鬼买酒喝,瓶盖和空瓶子可以换新的酒

        using System; using System.Collections.Generic; using System.Linq; using System.Text; using Syst ...

  9. mybatis 调用mysql存储过程 带输出输入参数

    http://lohasle.iteye.com/blog/1669879 存储过程都是一样的,只是根据自己的喜好,可以用MAP或者JAVABEAN传递参数. -- ----------------- ...

  10. 【CSS3】横屏引导小动画

    演示地址:http://codepen.io/anon/pen/oXbXdX 主要知识点: @media all and (orientation : landscape) { /* 这是匹配横屏的状 ...