2019独角兽企业重金招聘Python工程师标准>>>

在原先使用django开发完成项目的时候需要部署到服务器上面所以选择了apache和mod_wsgi的搭配,这些项目在网上有很多发行的二进制版本,当时没有怎么考虑就直接从网上下载版本下来,全部同一种vc编译器的版本的64位程序,配置好后整个项目可以运行起来后,之后就发现了每次停止服务的时候就会非常卡顿,多次重启服务后,apache进程还会多了几个,在询问了mod_wsgi的作者之后才了解了问题。

首先是选择django的版本,一般来说是选择比较新的版本,之后是python的版本,这里python的版本有2.7和3.6的这两种版本,之前是选择2.7的版本,django本身也是有支持3.6的版本,所以建议都选择3.0以上的版本,这个会是以后的主流。接下来就是apache的版本,选择2.4的版本,在这里apache官网上面是没有提供二进制的发行版本。网络上有很多发行版本,比如ApacheLounge,ApacheHaus。在这里如果是使用mod_wsgi这个模块就一定要选择ApacheLounge网站上面的apache发行的二进制版本,其它发行的版本没有办法编译mod_wsgi。mod_wsgi到github上面下载源码直接安装到自己的python里面。mod_wsgi也可以编译成so文件复制到apache里面作为一个模块,这两种方式没有什么差别。

介绍一些基本的软件。

python:https://www.python.org/downloads/windows/

apache:http://www.apachelounge.com/

django:https://www.djangoproject.com/

mod_wsgi:https://github.com/GrahamDumpleton/mod_wsgi

mod_wsgi doc:http://modwsgi.readthedocs.io/en/develop/index.html

以上的vc版本要全部是要一致,比如全是vs2012的,32位或者64位的。自己的电脑上面需要安装微软的编译器不然无法安装mod_wsgi和其它的第三方库。

mod_wsgi的使用在github的官网上面有详细的说明,这里介绍的是编译成so文件和安装到python里面,编译成so文件的话,电脑上面有微软的编译器,然后在源码目录里面有win文件夹,这里面的文件选择对应的环境修改里面的内容,执行命令就可以编译成功了,这种方式作者已经不推荐了。安装到python里面比较简单。如果是下载了源码的话执行:pip setup.py install,如果是使用pip安装的话:pip install mod_wsgi,这里有个前提条件就是c盘里面有apache二进制的文件夹名字就是Apache24或者Apache22,或者是设置环境变量MOD_WSGI_APACHE_ROOTDIR 设置apache的路径,具体的参考说明:

https://github.com/GrahamDumpleton/mod_wsgi/issues/188

python里面安装完了mod_wsgi或者是个so文件,就需要配置apache的配置文件,添加一下信息

LoadModule wsgi_module modules/mod_wsgi-py27.so  (这个是模块的路径,windows下是pyd)

WSGIPythonHome /usr/local/lib  (python的安装目录或者是虚拟环境)

<Directory /usr/local/wsgi/scripts>
Order allow,deny
Allow from all
</Directory>    (设置脚本目录可以访问)

WSGIScriptAlias /myapp /usr/local/wsgi/scripts/myapp.wsgi  (这个命令是设置访问的地址和执行的脚本,在下载的mod_wsgi的源码里面有一些模板)

在命令行下面可以使用mod_wsgi-express来获取配置信息,windows下没有启动服务这样的命令,

之后启动一个apache就可以了运行起来了,可以看到一些效果。

像这种的环境配置个人觉得比较的繁琐不是很简单,要是简单的话就好了。最后加上我当时解决问题的时候跟mod_wsgi的作者询问一些问题,主要是解决环境配置问题。

https://github.com/GrahamDumpleton/mod_wsgi/issues/215

以后有什么需要的在补充。

转载于:https://my.oschina.net/u/2000932/blog/1507215

apache+mod_wsgi+django的环境配置相关推荐

  1. Apache Cordova for ios环境配置

    原文:Apache Cordova for ios环境配置 1.安装针对iOS的工具 https://technet.microsoft.com/ZH-cn/library/dn757054.aspx ...

  2. Win配置Apache+mod_wsgi+django环境+域名

    转自:http://liluo.org/2010/05/win-apache-mod_wsgi-django-domain/ Python是落落的最爱,Django是Python web framew ...

  3. windows server2012R2 apache+mod_wsgi+django

    一.环境配置 windows server 2012 R2 64位 apache 2.4.53 vc15 mod_wsgi‑4.9.0‑cp37‑cp37m‑win_amd64.whl Python3 ...

  4. linux配置php mysql_Linux下LAMP(Apache+PHP+MySql)环境配置

    LAMP是一个缩写Linux+Apache+MySQL+PHP,它指一组通常一起使用来运行动态网站或者服务器的自由软件: * Linux,操作系统: * Apache,网页服务器: * MySQL,数 ...

  5. python apache mysql_在Linux系统上部署Apache+Python+Django+MySQL环境

    Linux+apache+mysql+python+mod_python+Django 说明:系统rhel 5.3,默认安装httpd.mysql,没有安装的,请下载安装RPM包,删除/etc/htt ...

  6. apache+mysql+php的环境配置

    一 配置前的准备 1 先设置环境变量(win7的) win10 二 配置apache 我用EditPlus打开httpd.conf LoadModule php5_module  "c:/w ...

  7. django准备 —环境配置,及其虚拟环境安装、django安装、数据库安装、新建项目...

    看到一本书上是安装虚拟机来开发django,可是电脑没有安装其他内存条,且也不是在企业开发django网站,知识学习用, 因此直接用虚拟环境开发,我的虚拟环境 安装:pip install virtu ...

  8. 配置apache支持django

    因为工作需要做全栈开发,所以必须要搭建一个web服务器和vue进行联调,但是如果采用django自带的服务器,静态资源的处理很麻烦,前端开发还是需要处理静态资源的,所以我还是需要一个专门的web服务器 ...

  9. 超详细Windows环境下使用Apache部署Django项目教程

    目录 超详细Windows环境下使用Apache部署Django项目教程 1.什么是Apache 2.安装并配置Apache 2.1 下载Apache 2.2 解压Apache到文件夹 2.3 配置c ...

最新文章

  1. 专用码计算机英语怎么说,计算机专用英语词汇整理
  2. python用字典存储学生信息网_用Python存储字典的四种方法
  3. CNN目标检测(二):YOLO
  4. SharePoint无代码工作流设计开发实例——交通费报销流程(三)
  5. 库存盘点应用的工具盘点机
  6. PHP接收到的$_POST数据里的邮箱符号@变成了%40
  7. 清理Windows.edb文件释放C盘空间(原创)
  8. python实现随机产生数据矩阵,将txt文件写入Excel中以及转置后写入Excel中
  9. 搭建springmvc项目遇到的问题
  10. Perl语言入门(05 文件)
  11. 2022.7台式机装机指南(3060 + 12490F)
  12. 工业上的数控机床所属计算机应用的什么领域,工业上的数控机床所属的计算机应用领域是______。...
  13. AD9(Altium Designer)电源铜块和整板铺铜设定不同规则,满足不同间距
  14. matlab中测交流电压,间接测量交流电压有效值的方法与应用
  15. 论文查重系统如何才安全?
  16. 儿童节,来一波回忆杀!
  17. tomcat 日志禁用
  18. OpenCV在visual studio 2022中的下载与配置
  19. php下载视频文件怎么打开,后缀名为php的视频文件用什么播放器?
  20. Stata:多元Logit模型详解(mlogit)

热门文章

  1. boost::contract模块实现volatile的测试程序
  2. boost::contract模块实现separate body的测试程序
  3. VTK:可视化算法之ExponentialCosine
  4. OpenCV cv :: UMat与DirectX11曲面的互操作性的实例(附完整代码)
  5. OpenCV相交凸intersectConvex的实例(附完整代码)
  6. OpenGL实现Cubic Environment Map立方环境图实例
  7. C++shell sort希尔排序的实现算法之一(附完整源码)
  8. C语言递归方式实现冒泡排序(bubble排序)算法(附完整源码)
  9. C++多态的基本概念
  10. c++I/O流的概念和流类库的结构