wsgi模块在Django中配置

897次阅读
没有评论

wsgi模块在Django中配置

在web服务器的协议中,wsgi可以实现与服务器的连接,我们可以把它看成是通信的一种桥梁。那么在Django中要想使用wsgi模块,是需要手动的在框架中国进行安装和配置的。不过鉴于很多人对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 解析正常

以上就是wsgi模块在Django中配置的方法,安装和配置完成后,我们可以就web和Django框架进行有关的连接操作,大家看懂后就可以动手尝试啦。

神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试

相关文章:

版权声明:wuyou2021-04-29发表,共计1597字。
新手QQ群:570568346,欢迎进群讨论 Python51学习