利用WSGI来部署你的网站
利用WSGI来部署你的网站#
当需要部署你的django项目的时候,可以使用apache+python来部署访问你的网站。
由于网上的有关的都是老版本的。所以这里使用apache2.4和python3.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来部署你的网站的更多相关文章
- 手把手教你利用Docker+jenkins部署你的网站
更新服务器的安装源为阿里的源,参考链接:https://blog.csdn.net/js_xh/article/details/79166655 安装docker; 1 更新资源 sudo apt-g ...
- Jenkins持续集成(下)-Jenkins部署Asp.Net网站自动发布
环境:Windows 2008 R2.Jenkins2.235.1.Visual Studio 2017: 概要 前面写过一篇文章,<自动发布-asp.net自动发布.IIS站点自动发布(集成S ...
- IIS 7 Web服务器上部署ASP.NET网站(转)
IIS 7 Web服务器上部署ASP.NET网站小记 摘自:http://swanmsg.blog.sohu.com/162111073.html 网上查找了很久关于iis7配置asp.net配置问题 ...
- 如何在IIS6,7中部署ASP.NET网站
http://www.cnblogs.com/fish-li/archive/2012/02/26/2368989.html 阅读目录 开始 查看web.config文件 在IIS中创建网站 IIS6 ...
- 如何在IIS6,7中部署ASP.NET网站(转载)
查看web.config文件 web.config通常会放在网站的根目录,这个文件中包含了一最重要的网站运行参数.比如: connectionStrings,httpHandlers,httpModu ...
- 在CentOS 上搭建nginx来部署静态页面网站
在centOs 上搭建nginx来部署静态页面网站 一.部署服务器环境 nginx:轻量级.高性能的HTTP及反向代理服务器,占用内存少,并发能力强,相比老牌的apache作为web服务器,性能更加卓 ...
- Nginx部署多个网站
为节省资源,通常一个服务器会运行多个网站,通常一个服务一个IP,多个域名共用一个IP,多个域名共用一个端口(通常是80端口). 这时候需要一台服务器部署多个网站,多个网站共用一个IP,共用一个80端口 ...
- 在IIS中部署Asp.Net网站
在IIS中部署Asp.Net网站 1.添加IIS或者删除IIS,在控制面板=>程序和功能=>打开或关闭功能 启动iis,右键计算机=>管理=>服务和应用程序=>Inter ...
- 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 ...
随机推荐
- C++ 的多重继承
不能够从对象访问基类的公开方法,真悲剧!只能在类里面提供公共函数! void Mentor::GetInfo(){ cout<<endl<<name<<endl&l ...
- 整型(int)转时间格式字符串及页面long型转时间格式字符串
1,如果是封装的整型的话需要在后台进行处理再返回页面 处理过程是这样的 SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm ...
- CoreGraphics 之CGAffineTransform仿射变换(3)
CoreGraphics 之CGAffineTransform仿射变换(3) CoreGraphics 的 仿射变换 可以用于 平移.旋转.缩放变换路径 或者图形上下文. (1)平移变换将路径或图 ...
- Spinner 实现key value 效果
在使用Spinner进行下拉列表时,我们一般都会使用字符串数组的方式加ArrayAdapter,取到的列表值就是我们所看到的Text.如果我们想实现网页中select <option value ...
- window.open || window.showModalDialog || window.showModelessDialog
http://dwcmayday201204063551.iteye.com/blog/1621751 http://www.cnblogs.com/zhangyi85/archive/2009/09 ...
- 为什么memset的第二个参数不把int替换成char
memset是一个经常被用来初始化数组的函数,其定义如下: 1 void * memset ( void * ptr, int value, size_t num ); 它的效果大致是把以ptr为起始 ...
- day49
几天没写了 这几天比较麻木呢 各种课程的再看 想买一直不舍得money 今天下定决心买了 这样我也静下心好好备战把 一天背的东西好多 政治和作文也是背了就忘记 尽力把 今天的买的课很悬乎 就不在这说了 ...
- MVC 区域模块
mvc4.0新增的area区域机制,可以协助你在架构较为大型的项目,让独立性较高的部分功能独立成一个MVC子网站,以降低网站与网站之间的耦合性,也可以通过area的切割,让多人同时开发同一个项目时候, ...
- web前端代码规范——css代码规范
Bootstrap CSS编码规范 语法 用两个空格来代替制表符(tab) -- 这是唯一能保证在所有环境下获得一致展现的方法. 为选择器分组时,将单独的选择器单独放在一行. 为了代码的易读性,在每个 ...
- linux上网络配置不生效的怪异现象处理
1.在Linux上.在ifcfg-eth0上设置IP地址等信息 具体配置信息例如以下已 [root@rac01 Desktop]#more/etc/sysconfig/network-scripts/ ...