怎么在Django中配置wsgi模块?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
1、WSGI介绍
Python Web Server Gateway Interface,翻译过来时Python web服务器网关接口,实际上就是一种协议,我们的应用(Django,Flask)实现了WSGI,就可以配合实现了WSGI(uWSGI,gunicorn)的服务器工作了。
2、配置实例
操作思路
安装 wsgi 模块
配置一个简单的虚拟主机
具体步骤
安装 mod_wsgi
我为了省事,采用源安装,如果需要3.4版本,可以采用源码安装,参考这里。
wsgi主站
编译安装wsgi
$ sudo apt-get install libapache2-mod-wsgi #安装 mod_wsgi
$ sudo dpkg -l libapache2-mod-wsgi #查看wsgi的版本
结果: libapache2-mod 3.3-4build1
$ a2enmod wsgi #验证模块安装正常
Module wsgi already enabled
验证 wsgi
为了验证wsgi的正常使用,准备手工建一个最简单的wsgi应用,实际就是一个py脚本。
在 /var/www/目录下,建立一个名为 main.wsgi 文件,内容如下:
def application(environ, start_response):
status = '200 OK'
output = 'Hello World!\n试试中文'
response_headers = [('Content-type', 'text/plain'),
('Content-Length', str(len(output)))]
start_response(status, response_headers)
return [output]
在 /etc/apache2/sites-available/firstdj 中增加一行,同时可以取消 DocumentRoot 配置,修改后内容如下:
<VirtualHost *:80>
ServerName firstdj
WSGIScriptAlias / /var/www/main.wsgi
</VirtualHost>
应用配置
$ sudo service apache2 reload
现在刷新 http://firstdj 能够返回
Hello World!
说明 wsgi 解析正常
关于怎么在Django中配置wsgi模块问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://www.py.cn/kuangjia/django/26966.html