• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >python > 在Mac OS上使用mod_wsgi连接Python与Apache服务器

在Mac OS上使用mod_wsgi连接Python与Apache服务器

作者:goldensun 字体:[增加 减小] 来源:互联网

goldensun 通过本文主要向大家介绍了apache mod wsgi,apache wsgi,wsgi,mod wsgi,mod wsgi下载等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

一、安装mod_wsgi 3.4:

./configure --with-apxs=/Users/levin/dev/apache2.2.27/bin/apxs --with-python=/usr/bin/python
make
make install
</div>

编辑httpd.conf使Apache导入模块mod_wsgi.so以及引入vhost配置文件:

LoadModule wsgi_module modules/mod_wsgi.so
Include conf/extra/httpd-vhosts.conf

</div> 编辑extra/httpd-vhosts.conf新建项目并增加gzip压缩python输出的文本:</div>
Listen 8001

<VirtualHost *:8001>
  WSGIScriptAlias / /Users/levin/dev/py/webapp/app.py/
  Alias /assets /Users/levin/dev/py/webapp/static/
  AddType text/html .py 
  <Directory /Users/levin/dev/py/webapp/>
    Order deny,allow
    Allow from all 
    SetOutputFilter DEFLATE       #开启gzip
    SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary      #图片不开启gzip
    SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|rar)$ no-gzip dont-vary   #压缩包不开启gzip
    SetEnvIfNoCase Request_URI .(?:pdf|doc)$ no-gzip dont-vary
    AddOutputFilterByType DEFLATE text/*
    AddOutputFilterByType DEFLATE application/javascript application/x-javascript application/xml
    AddOutputFilterByType DEFLATE application/x-httpd-php
  </Directory>
</VirtualHost>

</div>

先写个测试脚本app.py

def application(environ, start_response):
  start_response('200 OK', [('Content-Type', 'text/html')])
  return ['Hello, world.']
</div>

或者使用web.py框架:

import web

urls = (
  '/.*', 'hello',
)

class hello:
  def GET(self):
    return "Hello, world."

application = web.application(urls, globals()).wsgifunc()

</div>

在浏览器中访问: http://localhost:8001/,看到Hello, world.就算安装成功了。

二、Django使用中可能遇到的麻烦解决:
1.修改setting.py文件:

DEBUG = True 
TEMPLATE_DEBUG = False 
ALLOWED_HOSTS = ['localhost'] 
</div>

2.修改项目中的wsgi.py,这个是建项目的时候就自带创建的,跟setting.py在同一目录,我傻傻的自己创建好多次,后来才发现文件位置不对,悲剧了。

#/Library/WebServer/Documents是apache中DocumentRoot位置 
#votebing是我建的项目 
import sys 
sys.path.append('/Library/WebServer/Documents/votebing') 
</div>

3.修改apache安装目录中的httpd.conf,我的是在/etc/apache2/httpd.conf

#载入mod_wsgi 
LoadModule wsgi_module /usr/libexec/apache2/mod_wsgi.so 

WSGIScriptAlias /votebing /Library/WebServer/Documents/votebing/votebing/wsgi.py 
WSGIPythonPath /Library/WebServer/Documents 
 
<Directory /Library/WebServer/Documents/votebing/> 
<Files wsgi.py> 
Order deny,allow 
Allow from all 
</Files> 
</Directory> 
Alias /media/ /Library/WebServer/Documents/votebing/media/ 
Alias /static/ /Library/WebServer/Documents/votebing/static/ 
 
<Directory /Library/WebServer/Documents/votebing/static> 
Allow from all 
</Directory> 
 
<Directory /Library/WebServer/Documents/votebing/media> 
Allow from all 
</Directory> 
</div>

</div>

您可能想查找下面的文章:

  • 在Mac OS上使用mod_wsgi连接Python与Apache服务器
  • 在Mac OS上使用mod_wsgi连接Python与Apache服务器

相关文章

  • Python中利用sorted()函数排序的简单教程
  • 在Python的Django框架中创建和使用模版
  • python去掉行尾的换行符方法
  • python操作MySQL数据库的方法分享
  • 详解Python中heapq模块的用法
  • Python类的专用方法实例分析
  • 用Python编写一个简单的俄罗斯方块游戏的教程
  • python让图片按照exif信息里的创建时间进行排序的方法
  • python实现文本文件合并
  • Python中遍历字典过程中更改元素导致异常的解决方法

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • 在Django中创建第一个静态视图
    • 详解使用Python处理文件目录的相关方法
    • 举例区分Python中的浅复制与深复制
    • django之常用命令详解
    • Python异常处理总结
    • 学习python之编写简单乘法口诀表实现代码
    • python访问纯真IP数据库的代码
    • Python中最常用的操作列表的几种方法归纳
    • python条件变量之生产者与消费者操作实例分析
    • python中List的sort方法指南

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有