1.安装nginx
2 安装flup
- 下载适合python3.x的flup3.x版本(地址:https://github.com/chxanders/flup3)
- 解压并执行
python setup.py install
进行安装
3 准备简单的WSGI服务器程序
Server.py
# wsgiref
# Python内置的一个纯Python实现的WSGI服务器,仅供开发和测试使用
from wsgiref.simple_server import make_server
# 符合WSGI标准的一个HTTP处理函数,该函数由WSGI服务器来调用
# environment:一个包含所有HTTP请求信息的dict对象
# start_response:一个发送HTTP响应的函数
def application(environment, start_response):
# start_response()
# 发送HTTP响应的Header,注意Header只能发送一次,即只能调用一次start_response()函数。
# 它接收两个参数,一个是HTTP响应码,一个是一组list表示的HTTP Header,
# 每个Header用一个包含两个str的tuple表示
start_response('200 OK', [('Content-Type', 'text/html')])
# 返回值作为Http响应的body发送给浏览器,需要返回一个bytes
return [b'<b>Hello,World</b>']
# 创建一个服务器,IP地址为空,端口是8000,处理函数是application
server = make_server('', 8000, application)
print("Serving HTTP on port 8000...")
# 开始监听http请求
server.serve_forever()
4 运行Server.py
- 在cmd中切换到Server.py所在目录下,执行命令
python Server.py
- 浏览器中输入
http://localhost:8000/
,正常显示"Hello,World"
5 Nginx配置
- 在虚拟站点配置目录(
conf/vhost/
)下新建测试站点配置python_demo01.conf
upstream nginx_pydemo1{
#ip_hash;
server 127.0.0.1:8000;
}
server {
## 配置站点监听端口
listen 8800;
## 配置站点监听的IP地址,默认为localhost,只可用于本机访问,一般需要将其更改为真实ip
server_name localhost;
## location用于配置URL的转发接口
location / {
# 反向代理的地址
proxy_pass http://nginx_pydemo1;
}
}
-
启动Nginx或重新载入Nginx配置(Nginx已经启动的情况下)
- 启动
nginx.exe start
- 重新载入配置
nginx.exe -s reload
- 启动
浏览器输入
http://localhost:8800/
,正常显示"Hello,World"