在Mac OS上使用mod_wsgi连接Python与Apache服务器
2015-12-24 00:00
846 查看
一、安装mod_wsgi 3.4:
编辑httpd.conf使Apache导入模块mod_wsgi.so以及引入vhost配置文件:
编辑extra/httpd-vhosts.conf新建项目并增加gzip压缩python输出的文本:
先写个测试脚本app.py
或者使用web.py框架:
在浏览器中访问: http://localhost:8001/,看到Hello, world.就算安装成功了。
二、Django使用中可能遇到的麻烦解决:
1.修改setting.py文件:
2.修改项目中的wsgi.py,这个是建项目的时候就自带创建的,跟setting.py在同一目录,我傻傻的自己创建好多次,后来才发现文件位置不对,悲剧了。
3.修改apache安装目录中的httpd.conf,我的是在/etc/apache2/httpd.conf
在Mac OS系统上安装Python的Pillow库的教程
在Mac OS上搭建Python的开发环境
在MAC上搭建python数据分析开发环境
./configure --with-apxs=/Users/levin/dev/apache2.2.27/bin/apxs --with-python=/usr/bin/python make make install
编辑httpd.conf使Apache导入模块mod_wsgi.so以及引入vhost配置文件:
LoadModule wsgi_module modules/mod_wsgi.so Include conf/extra/httpd-vhosts.conf
编辑extra/httpd-vhosts.conf新建项目并增加gzip压缩python输出的文本:
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>
先写个测试脚本app.py
def application(environ, start_response): start_response('200 OK', [('Content-Type', 'text/html')]) return ['Hello, world.']
或者使用web.py框架:
import web urls = ( '/.*', 'hello', ) class hello: def GET(self): return "Hello, world." application = web.application(urls, globals()).wsgifunc()
在浏览器中访问: http://localhost:8001/,看到Hello, world.就算安装成功了。
二、Django使用中可能遇到的麻烦解决:
1.修改setting.py文件:
DEBUG = True TEMPLATE_DEBUG = False ALLOWED_HOSTS = ['localhost']
2.修改项目中的wsgi.py,这个是建项目的时候就自带创建的,跟setting.py在同一目录,我傻傻的自己创建好多次,后来才发现文件位置不对,悲剧了。
#/Library/WebServer/Documents是apache中DocumentRoot位置 #votebing是我建的项目 import sys sys.path.append('/Library/WebServer/Documents/votebing')
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>
您可能感兴趣的文章:
Mac OS X10.9安装的Python2.7升级Python3.3步骤详解在Mac OS系统上安装Python的Pillow库的教程
在Mac OS上搭建Python的开发环境
在MAC上搭建python数据分析开发环境
相关文章推荐
- 在Linux系统上部署Apache+Python+Django+MySQL环境
- Linux下将Python的Django项目部署到Apache服务器
- 使用Apache服务器mod_wsgi模式部署Django
- Apache虚拟机配置多端口站点
- repo.maven.apache.org timeout解决办法
- apache rewrite重写配置和本机域名配置,访问权限设置,伪静态实际应用
- apache2.4 的mpm配置
- Apache启动脚本的建立
- Apache Spark源码走读之4 -- DStream实时流数据处理
- Apache Spark源码走读之3 -- Task运行期之函数调用关系分析
- Apache Spark源码走读之2 -- Job的提交与运行
- 基于 Apache Mahout 构建社会化推荐引擎
- 基于 Apache Mahout 构建社会化推荐引擎
- centos6可用的Apache管理脚本
- Apache Shiro简介
- Apache的prefork模式和worker模式及其切换
- apache的虚拟域名rewrite配置以及.htaccess的使用。
- apache 加载 php7
- linux安装apache
- Apache ActiveMQの版本更迭和Apache ActiveMQの故障转移