Windows下部署Flask的Web服务

1、说下了解写web服务器,web框架与 WSGI 之间的关系:

Windows下部署Flask的Web服务

Web服务器层:Web服务器的主要作用就是接收请求 、处理请求、返回响应。比如:Nginx,Apache,IIS等。

Web框架层:Web框架的作用主要是方便我们开发 web应用程序,HTTP请求的动态数据就是由 web框架层来提供的。比如:Django、Flask等。

WSGI层:WSGI 不是服务器,也不是用于与程序交互的API,只是一种接口,它只适用于 Python 语言,其全称为 Web Server Gateway Interface,定义了 web服务器和 web应用之间的接口规范。也就是说,

只要 web服务器和 web应用都遵守WSGI协议,那么 web服务 器和 web应用就可以随意的组合。

需要注意的是:mod_wsgi 版本、Apache 版本、Windows 环境、 Python 的版本要一一匹配

需要安装:Python,Flask,Apache,mod_wsgi

Python,Flask的安装就不说了,下面重点说下Apache,mod_wsgi

先确定python版本和vc版本关系:

Windows下部署Flask的Web服务

Python版本:

Windows下部署Flask的Web服务

这样,我们就知道,Python3.6.4 对应VC 2015

选择对应VC2015、64位的版本下载。

1、Apache下载及安装

路径:https://www.apachelounge.com/download/https://www.apachehaus.com/cgi-bin/download.plx

后面的链接下载老是超时,前面路径可以

Windows下部署Flask的Web服务

Windows下部署Flask的Web服务

VC 2015

Windows下部署Flask的Web服务

将压缩包下载到本机,解压到需要的目录:D:\Apache24

修改配置:

D:\Apache24\conf

Windows下部署Flask的Web服务

文本文件打开

修改

Windows下部署Flask的Web服务

Windows下部署Flask的Web服务

将httpd.conf配置文件中的 “Require all denied” 修改为 “Require all granted”

确保8088端口没有被占有,如果被占用改成其他端口

把D:\Apache24\bin 添加到环境变量中

启动服务,

Windows下部署Flask的Web服务

也可以启动cmd,在httpd -k install -n “Apache”,将apache服务加入到Windows服务中,如图:

Windows下部署Flask的Web服务

Windows下部署Flask的Web服务

如果服务启动失败,很可能是httpd.conf里面配置的端口被占用,修改成其他端口测试一下

输入地址访问:http://localhost:8088/
;

Windows下部署Flask的Web服务

这样,apache就运行成功了

2、下载编译好的 mod_wsgi
https://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi

应该下载:mod_wsgi-4.5.24+ap24vc14-cp36-cp36m-win_amd64.whl

但是没有找到该版本,只能下载:

Windows下部署Flask的Web服务

把下载的mod_wsgi-4.7.1-cp36-cp36m-win_amd64.whl文件复制到python\Scripts下使用
用pip进行安装

进行安装在安装成功后在python的安装目录的\scripts文件夹下运行

Windows下部署Flask的Web服务

mod_wsgi-express module-config

LoadFile "C:\Python36\python36.dll"
LoadModule wsgi_module "C:\Python36\lib\site-packages\mod_wsgi\server\mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "C:\Python36"

Windows下部署Flask的Web服务

然后拷贝到http.conf 中,添加到其他的 loadmodule后。

重点:就是将执行mod_wsgi-express module-config后控制台中显示的这三行内容拷贝到 http.conf 中

重新启动Apache
没有报错则表示 mod_wsgi 模块在加载成功了。

Windows下部署Flask的Web服务

修改apache配置

现在说明一下,我们需要修改的地方:

1、ServerRoot “c:/Apache24″:修改成自己的目录地址

2、Listen 80:端口号配置,部分用户可能会发现自己的80端口占用,可能是IIS或者SQLserver占用,我们可以通过修改这个端口号,方便测试

ServerName example.com
    WSGIScriptAlias / E:\AI\tv_service\tv_service.wsgi

        Require all granted

要在局域网内访问,需要开启对应端口的入栈规则

如果有问题参考官网:如果有问题推荐看官网配置,它才会同步更新:

http://dormousehole.readthedocs.io/en/latest/deploying/mod_wsgi.html

重启apache,然后输入url地址访问:
http://localhost/hello

参考:Windows下部署Flask的Web服务

https://blog.csdn.net/u012748719/article/details/90477779

https://blog.csdn.net/k295330167/article/details/80616519

Original: https://www.cnblogs.com/shaosks/p/15802500.html
Author: shaomine
Title: Windows下部署Flask的Web服务

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/553461/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球