Windows下Python3.6.2+Django-1.11.5+httpd-2.4.27-win64-VC14部署网站
最近项目组正在上python+django。现在将部署过程总结下,相关文件也备份下,面得每次都要弄半天。网上很多不靠谱的做法,让我反复试错,浪费不少时间。
原材料:
mod_wsgi-4.5.17+ap24vc14-cp36-cp36m-win_amd64.whl
说明:
由于Python2.7未来会停止更新,公司就采用最新版算了
Apache不能编译成功,干脆就下了,现在采用的2.4 VC14版本,为啥要用VC14,因为mod_wsgi最新版只支持到VC14
mod_wsgi-4.5.17+ap24vc14-cp36-cp36m-win_amd64.whl:我们来解释下:
ap24vc14:apache 2.4 VC14版本
cp36-cp36m:这一节就是指python3.6+
win_amd64:就是只64位系统
在这里切记:一定要找到和你的系统版本,python版本,apache版本一致的几个套件,否则死活不成功。
接下里:我们就讲下如何安装:
1.配置Apache
Apache24:解压下来如下。

这里,我们需要修改:config文件。

在37行附近:修改apache的路径:
ServerRoot "D:/install/httpd-2.4.27-win64-VC14/Apache24"
在这个文件里面。默认是C:/Apache24。一键替换为你的实际路径。可以参考上图
在57行附近,修改监听的端口:
#Listen 12.34.56.78:80
Listen 8088
然后运行httpd.exe.这里,需要用命令行中运行。只要命令行窗口不退,表明运行成功。使用http://localhost:8088进行访问

2.安装python及pip
安装python3.6.2的时候,会把pip一起安装出来。然后配置环境变量。网上多的很的教程,随便 参考 这个文档
3.安装Django
参考这个文档: django 官方文档 在这里下载也可以
4.用mod_wsgi打通apache和django
注意:在低版本使用mod_wsgi.so即可让django和apache联系起来。但是,这个版本的wsgi没有.so文件。那么我们如何加载wsgi呢?
将你的 mod_wsgi-4.5.17+ap24vc14-cp36-cp36m-win_amd64.whl 文件,拷贝到python scripts的目录下,用
pip3 install mod_wsgi-4.5.17+ap24vc14-cp36-cp36m-win_amd64.whl
进行安装。之后会出现如下内容:
PS C:\Users\Administrator\AppData\Local\Programs\Python\Python36\Scripts> pip3 install C:\Users\Administrator\AppData\Lo
cal\Programs\Python\Python36\Scripts\mod_wsgi-4.5.17+ap24vc14-cp36-cp36m-win_amd64.whl
Requirement already satisfied: mod-wsgi==4.5.17+ap24vc14 from file:///C:/Users/Administrator/AppData/Local/Programs/Python/Python36/Scripts/mod_wsgi-4.5.17%2Bap24vc14-cp36-cp36m-win_amd64.whl in c:\users\administrator\appdata\local\programs\python\python36\lib\site-packages
PS C:\Users\Administrator\AppData\Local\Programs\Python\Python36\Scripts> mod_wsgi-express module-config
LoadFile "c:/users/administrator/appdata/local/programs/python/python36/python36.dll"
LoadModule wsgi_module "c:/users/administrator/appdata/local/programs/python/python36/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "c:/users/administrator/appdata/local/programs/python/python36"
PS C:\Users\Administrator\AppData\Local\Programs\Python\Python36\Scripts>
从命令行窗口把黑色字体部分拷贝出来,放到apache httpd.config
的 最后一个 LoadModule 的位置。大概在180行左右。

紧接着,在后写入:
#wsgi文件的位置
WSGIScriptAlias / E:/Workspace/pyworkspace/mycms/mycms/wsgi.py
#项目位置
WSGIPythonPath E:/Workspace/pyworkspace/mycms
#设置脚本
<Directory E:/Workspace/pyworkspace/mycms/mycms>
<Files wsgi.py>
Require all granted
setHandler wsgi-script
</Files>
</Directory>
5.修改wsgi文件:
把以下代码放到wsgi文件的红色框内
import sys
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.append(BASE_DIR)

至此,我们就结束了django 的部署。在我们的views中,有这样的返回:

此时启动apache,输入你实际的地址:

Windows下Python3.6.2+Django-1.11.5+httpd-2.4.27-win64-VC14部署网站的更多相关文章
- windows下python3.6 32bit 安装django
在Windows下python3.6安装Django1.11.3 1.首先下载地址:https://pypi.python.org/pypi/Django/1.11.3 pip install dja ...
- Windows下PythonQt编译(vs2015+Qt5.11.2+PythonQt 3.2)探索
时间:2018年10月20日 笔者最近在做Qt方面的开发工作,需用到脚本程序对程序内部进行扩展,就很自然的想到了PythonQt,下面介绍PythonQt在Windows下的的安装编译心得,水平有限, ...
- Windows下python3登陆和操作linux服务器
一.环境准备 python3远程连接需要用到pycrytodome和paramiko库,其中后者依赖前者,所以按照顺序来安装 1. 安装pycrytodome 1 pip install pycryt ...
- windows下python3.6安装pycryto or crypto or pycryptodome与使用
pycrypto,pycrytodome和crypto是一个东西,在很久以前,crypto在python上面的名字是pycrypto它是一个第三方库,但是已经停止更新三年了,所以不建议安装这个库: w ...
- windows下python3 使用cx_Oracle,xlrd插件进行excel数据清洗录入
我们在做数据分析,清洗的过程中,很多时候会面对各种各样的数据源,要针对不同的数据源进行清洗,入库的工作.当然python这个语言,我比较喜欢,开发效率高,基本上怎么写都能运行,而且安装配置简单,基本上 ...
- Windows下PythonQt编译(vs2015+Qt5.11.2+PythonQt 3.2)
后记: 由于自己low,没有下载罪行的python3.2导致编译上遇到种种问题,后文可以参考,建议看: <Windows7 VS2015 下编译 PythonQt3.2> https:// ...
- Windows下python3生成UTF8的CSV文件和sha256sum踩坑记录
CSV的坑 在Ubuntu下是简单的写入完事 import csv ... with open(filename, 'w') as output: f = csv.writer(output) f.w ...
- Windows下Python3+nose+appium自动化测试之Android篇
[本文出自天外归云的博客园] 简介 以下用来做自动化测试的这款app叫最爱抓娃娃,以后会改名为网易抓娃娃. 下文提到的appiumier项目里会包含用来测试的apk包以及自动化测试代码. 先说一个坑 ...
- Windows下Python3.7的安装
1.下载Python3官网地址:www.python.org当前最新版本为Python 3.7.3. Windows下有个6个下载链接Windows x86-64 embeddable zip fil ...
- 用windows下的Anaconda搭建Django虚拟环境
Django 是一个Python定制框架,可用于简便.快速的开发数据库驱动的web站点. 要使用Django,首先要建立一个虚拟工作环境. 那么,为什么要搭建虚拟环境呢?我们来看以下的开发场景: 假设 ...
随机推荐
- 【学习参考】Animate.css动画演示
学习参考地址: http://www.dowebok.com/demo/2014/98/
- C# 时间戳(TimeStamp)与时间(DateTime)的互相转换
什么是时间戳:时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数. 时间戳在线转换网址:https://tool.lu/ ...
- 洛谷1378 油滴扩展 dfs进行回溯搜索
题目链接:https://www.luogu.com.cn/problem/P1378 题目中给出矩形的长宽和一些点,可以在每个点放油滴,油滴会扩展,直到触碰到矩形的周边或者其他油滴的边缘,求出剩余面 ...
- 洛谷 P5658 括号树 题解
原题链接 简要题意: 求出以从每个节点到根形成的括号序列的合法对数. 算法一 观察到 \(n \leq 8\) ,所以我们可以用 纯粹的暴力 . 用 \(O(n)\) 时间得出当前节点到根的字符串. ...
- vue的使用经验
导读 这一次的口号是,带你重新认识vue,拯救1,2个前端开发者. 从2018年从事前端职业以来,呆过大小公司,干这一行都有2年多.代码写的多了,就越来越体会新手程序员都是挖坑的.在工作过程中,用一种 ...
- [math] Codeforces 597A Divisibility
题目:http://codeforces.com/problemset/problem/597/A Divisibility time limit per test 1 second memory l ...
- Ubuntu18.04下安装MySQL5.7(支持win10-wsl环境)
注意: 本文操作环境为win10系统wsl下的Ubuntu18.04,对于原生的Ubuntu18.04同样适用.MySQL默认版本为5.7,其他版本不适用. 安装步骤 1.更新源: sudo apt ...
- PHP Curl进行Post时指定 multipart/form-data 或 application/x-www-form-urlencoded 的方法
PHP Curl进行Post时指定 multipart/form-data 或 application/x-www-form-urlencoded 的方法 先看一段典型的CURL POST的代码: $ ...
- c++实现单纯形法现行规划问题的求解
在本程序中默认该现行规划问题有最优解 针对此问题: #include<iostream> using namespace std; int check(float *sigema, int ...
- HDU 3303 Harmony Forever 前缀和+树状数组||线段树
Problem Description We believe that every inhabitant of this universe eventually will find a way to ...