Win7环境下Apache+mod_wsgi本地部署Django

django基础已经掌握的同学可以尝试将项目发布已寻找些许成就感,以鼓励自己接下来进行django的进阶学习

以前你总是使用python manage.py runserver进行服务启动,但是却不知:

  1. runserver是单线程服务,Apache支持多线程,性能不再一个等级
  2. runserver在debug模式下才能使用静态文件,而debug模式下运行会留存很多debug信息,时间长了内存爆炸
  3. runserver挂了就GG,但是Apache很稳定,就算挂了,也只挂掉wsgi线程
  4. runserver方便开发调试而产生,生产环境不可用

废话不多说,上干货(前提:python环境ok,django项目ok,本地可运行)

作者项目路径:F:/py_workspace/DJ/proj

Apache路径:E:\httpd-2.4.33-win64-VC15\Apache24

一、环境

  1. OS:win7
  2. Python2.7:自己安装配置环境变量即可
  3. Django1.8:详见“搞测试”公众号
  4. Apache2.4:https://www.apachelounge.com/download/
  5. mod_wsgi.so:https://github.com/GrahamDumpleton/mod_wsgi/releases/download/4.4.12/mod_wsgi-windows-4.4.12.tar.gz

二、Apache配置

  1. 点击https://www.apachelounge.com/download/,选择适合自己的Apache版本(32位/64位)下载,下载完成得到httpd-2.4.33-win64-VC15.zip。
  2. 解压后打开conf/httpd.conf配置文件,修改如下配置:

 1 ServerRoot "E:\httpd-2.4.33-win64-VC15\Apache24"
 2 Listen 192.168.200.235:8090
 3 #ServerName 192.168.200.235:8090   #可以注释掉
 4 DocumentRoot "E:\httpd-2.4.33-win64-VC15\Apache24\htdocs"    #Apache路径下htdocs文件夹路径,下同
 5 <Directory "E:\httpd-2.4.33-win64-VC15\Apache24\htdocs">
 6 ScriptAlias /cgi-bin/ "E:\httpd-2.4.33-win64-VC15\Apache24\cgi-bin/"    #Apache路径下cgi-bin文件夹的路径,下同
 7 <Directory "E:\httpd-2.4.33-win64-VC15\Apache24\cgi-bin">
 8     AllowOverride None
 9     Options None
10     Require all granted
11 </Directory>

httpd.conf

    在Apache的bin路径下运行:httpd.exe,出现Apache控制台,访问localhost:8090,出现 It works 说明Apache服务启动成功。

    或者在httpd.exe所在路径下shift+邮件选择在此处打开命令窗口(CMD),键入:httpd.exe -k start 同样可以启动Apache服务。

    想要查看Apache服务,右击我的电脑,选择管理,查看服务即可。

三、mod_wsgi配置

  1. 点击https://github.com/GrahamDumpleton/mod_wsgi/releases/download/4.4.12/mod_wsgi-windows-4.4.12.tar.gz,将下载成功的压缩包解压,选择适合自己版本的so文件。
  2. 将so文件复制到Apache路径下的modules文件夹下即可。
  3. 将so文件放到指定位置后再次进行httpd.conf的项目和wsgi配置(直接在httpd.conf后面追加即可)。

 1 #add mod_wsgi
 2 LoadFile "c:/python27/python27.dll"
 3 LoadModule wsgi_module modules/mod_wsgi-py27-VC9.so
 4 WSGIPythonHome "c:/python27"
 5
 6 WSGIScriptAlias / F:/py_workspace/DJ/proj/proj/wsgi.py
 7
 8 WSGIPythonPath  F:/py_workspace/DJ/proj/
 9
10 <Directory F:/py_workspace/DJ/proj/proj>
11 <Files wsgi.py>
12     Require all granted
13 </Files>
14 </Directory> 

httpd.conf

    配置完成后再次启动Apache服务,访问localhost:8090即可看到Django web项目的页面了。

四、静态文件配置

    同样是在httpd.conf配置文件后面追加即可。

 1 #Alias /static F:/py_workspace/DJ/proj/static
 2 #<Directory F:/py_workspace/DJ/proj/static>
 3 #    AllowOverride None
 4 #    Options None
 5 #    Require all granted
 6 #</Directory>
 7
 8 #Alias /media F:/py_workspace/DJ/proj/media
 9 #<Directory F:/py_workspace/DJ/proj/media>
10 #    AllowOverride None
11 #    Options None
12 #    Require all granted
13 #</Directory>  

五、别忘了

  修改django的settings配置:

DEBUG = False
Listen 192.168.200.235:8090

ALLOWED_HOSTS = [‘*‘]    

  这样配置,局域网内的小伙伴就可以访问到你的Django Web项目了。

  PS:因为在之前的httpd.conf配置中,已经配置listen为本机ip了,所以这里还是192xxx,有时候为了调试方便我们还在前面的listen中会配置ip为127.0.0.1:8090供自己调测使用,而不让局域网内的人访问。

六、Q&A

  Q:启动Apache的时候提示:无法启动此程序,因为计算机中丢失VCRUNTIME140.dll 尝试重新安装此程序以解决此问题

  A:安装Microsoft.Net.Framework 4.6.1,点击下载;安装Visual C++ Redistributable for Visual Studio 2015,点击下载

原文地址:https://www.cnblogs.com/phyger/p/9092704.html

时间: 2024-08-15 04:17:39

Win7环境下Apache+mod_wsgi本地部署Django的相关文章

在windows上用apache+mod_wsgi服务部署django项目

之前一直在本地跑django项目,最近尝试在服务器上部署项目,目前已经成功部署,也花了好多时间,这里跟大家交流一下,希望对像我一样的新手有帮助. 一.配置环境: 1.Python版本3.7 2.服务器平台:windows10 3.django版本1.11.20 二.Apache下载与配置 1.进入Apache官网,http://httpd.apache.org/下载对应版本,依次按照下面图片找到版本下载列表: 到这里就可以下载相应的版本了,我选择的是Apache 2.4.39 x64为版本(根据

【甘道夫】Win7环境下Eclipse连接Hadoop2.2.0

准备: 确保hadoop2.2.0集群正常运行 1.eclipse中建立java工程,导入hadoop2.2.0相关jar包 2.在src根目录下拷入log4j.properties,通过log4j查看详细日志 log4j.rootLogger=debug, stdout, R log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLa

Win7环境下Web服务器的搭建和常见问题的处理

摘要:随着计算机技术的发展,学校和家庭用机很多都更新配置了Win7系统,如何在此环境下搭建Web服务器?该文根据多年的教学经验,总结了在Win7环境下动态网站Web服务器的搭建和常见问题的处理. 关键词:Web服务器;Win7系统;常见问题 Web服务器也称为WWW服务器,主要功能是提供网上信息浏览服务.Web服务器不仅能够存储信息,还能使用户在通过Web浏览器提供的信息的基础上运行脚本和程序. 静态网站是指网站的内容“固定不变”,当用户浏览器通过互联网HTTP协议向Web服务器请求提供网页内容

eclipse,myeclipse开发环境下,maven远程部署到tomcat7服务器(图文)

eclipse,myeclipse开发环境下,maven远程部署到tomcat7服务器(图文) 有的人想在eclipse写java web 项目,通过maven也是一种实现的方法,可以实现java web 项目打包成war,发布到tomcat. 在pom.xml文件的build增加下面的代码,相应的地方修改账号和密码,还有发布的名称 , 第一次使用需要下载很多构建. 需耐心等待 ... ... ... <build> <finalName>test_server</final

eclipse,myeclipse开发环境下,maven一键部署到tomcat7(图文)

有的人想在eclipse写java web 项目,通过maven也是一种实现的方法,可以实现java web 项目打包成war,发布到tomcat. 在pom.xml文件的build增加下面的代码,相应的地方修改账号和密码,还有发布的名称 <build> <finalName>daka_server</finalName> <!-- 原有代码 --> <plugin> <groupId>org.codehaus.mojo</gr

win7环境下创建超级隐藏账户

在win7环境下,系统安全得到了加强,今天来看看怎样在win7环境下新建一个超级隐藏用户. 首先,我们需要新建一个普通的账户. 在win7中我们使用net  user  添加或者删除账户都是被拒绝的. 所以,我们只有在控制面板中新加账户. 我们新建一个xiaoqin01$账户 然后我们就需要为当前用户取得管理员权限了,后面查看注册表时还要用到管理员权限.(regedit,进入注册表:regedt32,进入注册表编辑器) 我们在cmd中用net user查看不到我们刚刚新建的xiaoqin01$账

在Win7环境下安装启动Linux

在Win7系统下,安装启动Linux特别的不方便,因为XP下的boot.ini配置文件不在了,要添加一下启动选项的话, 只能使用专门的工具,这或多或少给人带来不爽的感觉,,, 其实Win7下虽然没有了boot.ini文件,但是在C盘目录下的boot.ini文件,同样还是可以添加系统的启动选项的,这让我们又可以脱离专门的配置工具,手动的设置grub4dos,然后启动安装linux,ubuntu了. 首先去网上下载grub4dos这个软件包,然后把"grldr","grldr.m

Win7环境下使用CMake编译OpenGL_Tutorials的一些注意事项

最近在通过网站Tutorials for openGL 3.3+ 来学习计算机图形学.这里的教材很人性化,更重要的是它让我们抛开旧式openGL去学习.而旧式openGL似乎也一直为人们所诟病(推荐阅读:http://blog.monkeypotion.net/reading/gameprogreading/opengl-versus-directx-the-war-is-over) 网站已经给我们写好了很多现成的代码,只需要我们用CMake去批量编译,之后就可以运行了.关于如何用CMake进行

Win7环境下VS2010配置Cocos2d-x-2.1.4最新版本号的开发环境

2014-06-01 BaoXinjian In Capgemini 一.摘要 因为用户在调用Request时需输入很多参数,经过很多Form页面,如果想打印采购订单,发票,日记账时, 客户会要求在From中新增一个按钮,客户只需按这个按钮即可将采购订单进行输出,系统会自动调取采购订单页面上的数据,无需用户输入,实行自动化,增加用户交互性 一般这种需求有两种实现方式 通过custom.pll,用代码进行定制 通过form personalization,用设定进行定制 在调用程式时,一般会用到f