在Windows上搭建Django+python+apache+wsgi

首先要注意一下,windows是32位还是64位,64位下安装wsgi难度还是比较大,主要是网上的wsgi模块基本上都是32位系统下编译的,在64位系统下不能使用,自己编译的话难度就直线上升了。顺便说一句,真的要编译,还不如使用Linux,简单又方便。
下面的操作都是基于x86(32位)windows系统。

1、安装python
python选用2.7版。虽然最高版本已经到了3.5了,但一方面python2和python3还是有兼容性问题,另一方面,很多第三方软件更新没这么快,所以,在学习的角度下,还是选2.7吧。
这一步很简单,直接双击运行python的安装程序,按照向导一路next即可。在路径方面建议设置一个比较好找的目录(别忘了设置环境变量, Path中添加;%PYTHON_HOME%;)

2、安装PIL
下载主页:http://www.pythonware.com/products/pil/ 。
PIL是Python Imaging Library缩写,主要用来处理图片用的,这里安装它是为了在Django系统中用它来对上传的图片自动的生成缩略图的。安装方法也相当的简单,直接双击运行PIL-1.1.7.win32-py2.7.exe 这个文件,然后一路next即可。因为之前已经安装好了python,所以PIL的安装程序会从注册表中读取到python安装的路经,然后就自动地把PIL安装到python\lib\site-packages\PIL下面了。


3、安装Django
解压到一个目录里,例如C:\Django-1.10.1下面。
接下来就是安装Django了。输入python setup.py install,这个命令将会把Django安装到site-package下面并同时设置好sys.path。
在系统PATH中加入以下路径:C:\Python27\Lib\site-packages\Django-1.10.1-py2.7.egg\django\bin。根据版本不同,路径名称稍有不同。这是为了能直接使用django-admin.py来进行Django项目管理。

第一个工程的创建
假设工程项目在D:\WWW下,则执行下面命令生成工程框架:
D:\WWW>django-admin.py startproject my_python
D:\WWW\my_python>运行开发服务器:
python manage.py runserver
默认开发服务器端口为8000,则输入网址 http://127.0.0.1:8000 就可以打开第一个django项目主页了。

4、安装apache
现在apache在主页上没有直接提供二进制安装包,需要下载第三方编译包。点击主页上Files for Microsoft Windows链接后,进入Using Apache HTTP Server on Microsoft Windows页,这里我选择了第一个ApacheHaus。
接下来又要选择了,有多种编译包,有VC2008(VC9)、VC2010(VC10)、VC2015(VC14)等,因为我使用的是python2.7,而且服务器系统为win2003 32位,为了兼容性,我选择了Apache 2.4.x VC9 x86版。
下载后直接解压到C:/Apache24下就行了。
然后修改httpd.conf文件,加入        LoadModule wsgi_module modules/mod_wsgi.so
WSGIScriptAlias /mypython D:/WWW/my_python/my_python/wsgi.py(第三步所生成的工程中的文件,查找到,写对路径)
WSGIPythonPath D:/WWW/my_python(第三步生成的工程的目录)
<Directory "D:/WWW/my_python/my_python">
    Options FollowSymlinks
    AllowOverride none
    Require all granted
</Directory>
这里我要提一下,apache24与apache22配置有一些不同,原来的Order deny,allow已经被Require all granted代替,网上有一些配置说明都是基于apache22的,直接使用在apache24中会有错。

5、安装mod_wsgi
下载:http://www.lfd.uci.edu/~gohlke/pythonlibs/    搜索wsgi,对应好python版本。
或者直接下载https://github.com/GrahamDumpleton/mod_wsgi/releases/download/4.4.12/mod_wsgi-windows-4.4.12.tar.gz 。
这里对应的版本为:apache24 python27 win32 VC9。
将mod_wsgi-py27-VC9.so改名为mod_wsgi 放到apache的modules下即可

6、mysql-python模块安装
开发项目总归要用数据库的,比如说MySQL,需要下载mysql-python模块,地址:https://pypi.python.org/pypi/MySQL-python/1.2.4 。这个软件只支持MySQL-3.23 through 5.5 and Python-2.4 through 2.7。
编译好的二进制包只有for python2.7 x86版本。windows下使用开源软件就是这么辛苦。
安装后,进入python命令行,执行 import MySQLdb ,不出错就是正确。

7、编写项目代码
在D:/WWW/my_python/my_python下
编写views.py
from django.http import HttpResponse,Http404
import datetime
def hello(req):
    return HttpResponse("<h1>Hello World!</h1>")
def homepage(req):
    return HttpResponse("This is mypython's Homepage")
    
修改urls.py
from django.conf.urls import url
from django.contrib import admin
from phinfo.views import hello,homepage
urlpatterns = [
    url(r'^hello/$', hello),
    url(r'^$', homepage),
]

启动apache后,http://127.0.0.1/mypython/ 显示home页面,http://127.0.0.1/mypython/hello 显示helloworld页面。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章