httpd安装和配置(cgi、wsgi)
参考:http://webpy.org/cookbook/mod_wsgi-apache.zh-cn
一、yum方式安装:
1、yum install httpd
输入y后继续。
2、看到一下类似的返回,说明安装成功
3、由于linux Redhat默认将httpd作为系统服务,可以根据实际需要将httpd加入开机启动。
单独查看某一服务是否开机启动的命令 :chkconfig --list 服务名
单独开启某一服务的命令 ;chkconfig 服务名 on
单独关闭某一服务的命令;chkconfig 服务名 off
查看某一服务的状态:service httpd status
二、离线安装httpd
wget http://mirror.bit.edu.cn/apache//httpd/httpd-2.4.33.tar.gz
tar -zxvf httpd-2.4.33.tar.gz
yum install pcre pcre-devel -y
以下省去几百字。
三、httpd常用配置:
1、配置httpd支持cgi
vim /etc/httpd/conf/httpd.conf
如果这一行被注释,去掉注释
LoadModule cgi_module modules/mod_cgi.so
设置好CGI目录:
ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
配置如下:
<Directory "/var/www/cgi-bin/">
AllowOverride None
Options FollowSymLinks +ExecCGI
Order allow,deny
Allow from all
</Directory>
添加CGI扩展名:(去掉注释)
AddHandler cgi-script .cgi .py
2、配置httpd支持web.py
a、安装python
b、安装web.py
c、测试web.py是否成功安装,并且可以访问。
code.py内容如下所示:
import web urls = ( '/', 'index' ) class index: def GET(self): return "Hello, world!" if __name__ == "__main__": app = web.application(urls, globals()) app.run()
测试web.py是否安装成功。
python code.py 8080 &
看到以下结果测试通过:
d、配置httpd支持web.py
您可以使用您自己的项目名称替换’appname’。
您可以使用您自己的文件名称替换’code.py’。
/var/www/webpy-app 为包含您的code.py的文件夹目录路径。
/var/www/webpy-app/code.py 是您的python文件的完整路径。
安装mod_wsgi: yum install mod_wsgi(系统默认会关联python2.6)
确认mod_wsgi.so 是否位于这个目录/usr/lib64/httpd/modules/
vim /etc/httpd/conf/httpd.conf
在httpd.conf中配置Apache 加载 mod_wsgi模块和您的项目,在配置文件最后面加入如下脚本:
LoadModule wsgi_module modules/mod_wsgi.so
WSGIScriptAlias /appname /var/www/webpy-app/code.py/
Alias /appname/static /var/www/webpy-app/static/
AddType text/html .py
<Directory /var/www/webpy-app/>
Order deny,allow
Allow from all
</Directory>
演示文件code.py
import web
urls = (
'/.*', 'hello',
)
class hello:
def GET(self):
return "Hello, world."
application = web.application(urls, globals()).wsgifunc()
在您的浏览器地址栏中输入’ http://your_server_name/appname’ 来验证它是否可用。
#注意:经过测试,code.py无法导入当前目录的其他模块,可以临时放到python的site-packgs目录下。
#注意: mod_wsgi + sessions
如果您需要在mod_wsgi中使用sessions,您可以改变您的代码如下:
app = web.application(urls, globals())
curdir = os.path.dirname(__file__)
session = web.session.Session(app, web.session.DiskStore(curdir + '/' + 'sessions'),)
application = app.wsgifunc()
#mod_wsgi 性能: 有关mod_wsgi的性能,请参考mod_wsgi的维基页: http://code.google.com/p/modwsgi/wiki/PerformanceEstimates
httpd安装和配置(cgi、wsgi)的更多相关文章
- centos7 apache httpd安装和配置django项目
一.安装httpd服务 apache在centos7中是Apache HTTP server.如下对httpd的解释就是Apache HTTP Server.所以想安装apache其实是要安装http ...
- httpd安装与配置(编译安装)
httpd简介 httpd是Apache超文本传输协议(HTTP)服务器的主程序.被设计为一个独立运行的后台进程,它会建立一个处理请求的子进程或线程的池. 通常,httpd不应该被直接调用,而应该在类 ...
- TOMCAT 安装教程 & 配置CGI & c语言exe
TOMCAT安装 参考原文网址:百度经验http://jingyan.baidu.com/article/154b4631aad2bb28ca8f4191.html 1.下载安装JDK 网址:http ...
- 实例:使用playbook实现httpd安装、配置、以及虚拟主机的配置
一.安装环境配置 1.在控制节点给受控主机配置本地仓库文件 [root@ansible ~]# vim /etc/yum.repos.d/dvd.repo [AppStream] name=appst ...
- 关于httpd服务的安装、配置
httpd是Apache超文本传输协议(HTTP)服务器的主程序.通常,httpd不应该被直接调用,而应该在linux系统中由 apachectl 调用.接下来我们将了解有关httpd服务的安装与配置 ...
- CentOS安装和配置Apache(httpd)
1. 安装httpd yum install httpd #安装apache 2. 启动httpd systemctl start httpd.service #启动apache 3. 随服务器自启动 ...
- 安装和配置Mantis<项目管理工具>
说明: 黑色加粗部分为配置文档修改或添加的内容,例如index.cgi意思为修改或添加index.cgi 红色加粗部分为操作控制而非直接输入,例如空格意思为此处需要按下空格键 一.介绍 Apache: ...
- Linux下Nagios的安装与配置[转]
一.Nagios简介 Nagios是一款开源的电脑系统和网络监视工具,能有效监控Windows.Linux和Unix的主机状态,交换机路由器等网络设置,打印机等.在系统或服务状态异常时发出邮件或短信报 ...
- Apache http Server 2.4 安装与配置
前言 Apache官网从2.2之后,不再提供windows的msi或exe安装版本,现在Apache http Server有两个分支2.2及2.4 注意事项 如果之前有安装2.2的版本,请先卸载 A ...
随机推荐
- Python 交互模式中 Delete/Backspace 键乱码问题
进入 Python 交互模式,按下 Delete/Backspace 键,会出现 ^H 字符 解决方式: 1. 进到 Python 的Modules目录 [root@cyt-test Python-2 ...
- Linux下安装nginx,以及启动和停止
1.安装 安装nginx之前,首先确保系统已经安装了依赖:g++.gcc.openssl-devel.pcre-devel和zlib-devel软件 yum install gcc-c++ yum - ...
- MySQL之架构与历史(一)
MySQL架构与历史 和其他数据库系统相比,MySQL有点与众不同,它的架构可以在多种不同的场景中应用并发挥好的作用,但同时也会带来一点选择上的困难.MySQL并不完美,却足够灵活,它的灵活性体现在很 ...
- Redis实现之数据库(一)
服务器中的数据库 Redis服务器将所有数据库都保存在服务器状态redis.h/redisServer结构体的db数组中,db数组的每个项都是一个redis.h/redisDb结构体,每个redisD ...
- 扩展MarkDown表格
一直不知道表格中的:是什么意思,看了GcsSloop的这篇文章后恍然大悟,做下记录. 原文链接 第二行分割线部分可以使用 : 来控制内容状态 MarkDown : | 默认 | 靠右 | 居中 | 靠 ...
- Event log c++ sample.
1. Init regedit. bool InitLog( TCHAR *logName, TCHAR *sourceName, TCHAR *MessageDllName ) { // This ...
- 【POI 2010】反对称 Antisymmetry
题目: 对于一个 $0/1$ 字符串,如果将这个字符串 $0$ 和 $1$ 取反后,再将整个串反过来和原串一样,就称作「反对称」字符串.比如 $00001111$ 和 $010101$ 就是反对称的, ...
- PostgreSQL 如何优化索引效率
使用 gin() 创建全文索引后,虽然有走索引,但是当结果集很大时,查询效率还是很底下, SELECT keyword,avg_mon_search,competition,impressions,c ...
- icpc南昌邀请赛 比赛总结
上周末,我参加了icpc南昌区域赛邀请赛,这也是我的第一次外出参赛. 星期五晚上,在6个小时的火车和1个小时的公交后,我们终于抵达了江西师范大学,这次的比赛场地.江西师范大学周围的设施很齐全,各种烧烤 ...
- Leetcode 518.零钱兑换II
零钱兑换II 给定不同面额的硬币和一个总金额.写出函数来计算可以凑成总金额的硬币组合数.假设每一种面额的硬币有无限个. 注意: 你可以假设 0 <= amount (总金额) <= 500 ...