一、环境
1、Apache 版本 :Server version: Apache/2.4.48 (Win64) Apache Lounge VS16 Server built: May 18 2021 10:45:56
2、python 版本 Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:59:51) [MSC v.1914 64 bit (AMD64)] on win32
3、windows版本 : windows10
4、网关:mod_wsgi-4.9.0-cp37-cp37m-win_amd64.whl
二、配置
添加环境变量:pythonhome ,特别重要。
#安装虚拟环境
C:\Users\Administrator>pip install virtualenv
#创建虚拟环境
D:\py_project\py_web_app>virtualenv venv
#激活虚拟环境
D:\py_project\py_web_app> venv\Scripts\activate
#安装python网关
(venv) D:\py_project\py_web_app\venv>pip install mod_wsgi-4.9.0-cp37-cp37m-win_amd64.whl
#生成配置信息
(venv) D:\py_project\py_web_app\venv\Scripts>mod_wsgi-express module-config
#删除虚拟环境
(venv) D:\py_project\py_web_app>del venv
D:\py_project\py_web_app\venv\*, 是否确认(Y/N)? y
#安装apache
D:\opt\AMP\Apache24\bin>httpd -k install -n apache2.4
#启动apache
D:\opt\AMP\Apache24\bin>net start Apache2.4
#查看apache 版本
C:\Users\Administrator>httpd -v
#删除windows服务
C:\Users\Administrator>sc delete apache2.4
#查看端口
C:\Users\Administrator>netstat -ano|findstr "80"
#查看进程
C:\Users\Administrator>tasklist|findstr "4"
三、踩坑
1、现象:同时配置两台电脑,相同环境下,一台正常、一台报错。
AH00558: httpd.exe: Could not reliably determine the server's fully qualified domain name, using fe80::95a2:148f:fb99:e65f. Set the 'ServerName' directive globally to suppress this message
Fatal Python error: initfsencoding: unable to load the file system codec
ModuleNotFoundError: No module named 'encodings'
2、处理方式:添加 环境变量
PYTHONHOME=D:\opt\Python\Python37,特别重要。
只能写PYTHONHOME ,其他都报错。
#参考网站
https://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi
https://blog.csdn.net/zhangtao0417/article/details/81564444?spm=1035.2023.3001.6557&utm_medium=distribute.pc_relevant_bbs_down.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-2.nonecase&depth_1-utm_source=distribute.pc_relevant_bbs_down.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-2.nonecase