参考: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)的更多相关文章

  1. centos7 apache httpd安装和配置django项目

    一.安装httpd服务 apache在centos7中是Apache HTTP server.如下对httpd的解释就是Apache HTTP Server.所以想安装apache其实是要安装http ...

  2. httpd安装与配置(编译安装)

    httpd简介 httpd是Apache超文本传输协议(HTTP)服务器的主程序.被设计为一个独立运行的后台进程,它会建立一个处理请求的子进程或线程的池. 通常,httpd不应该被直接调用,而应该在类 ...

  3. TOMCAT 安装教程 & 配置CGI & c语言exe

    TOMCAT安装 参考原文网址:百度经验http://jingyan.baidu.com/article/154b4631aad2bb28ca8f4191.html 1.下载安装JDK 网址:http ...

  4. 实例:使用playbook实现httpd安装、配置、以及虚拟主机的配置

    一.安装环境配置 1.在控制节点给受控主机配置本地仓库文件 [root@ansible ~]# vim /etc/yum.repos.d/dvd.repo [AppStream] name=appst ...

  5. 关于httpd服务的安装、配置

    httpd是Apache超文本传输协议(HTTP)服务器的主程序.通常,httpd不应该被直接调用,而应该在linux系统中由 apachectl 调用.接下来我们将了解有关httpd服务的安装与配置 ...

  6. CentOS安装和配置Apache(httpd)

    1. 安装httpd yum install httpd #安装apache 2. 启动httpd systemctl start httpd.service #启动apache 3. 随服务器自启动 ...

  7. 安装和配置Mantis<项目管理工具>

    说明: 黑色加粗部分为配置文档修改或添加的内容,例如index.cgi意思为修改或添加index.cgi 红色加粗部分为操作控制而非直接输入,例如空格意思为此处需要按下空格键 一.介绍 Apache: ...

  8. Linux下Nagios的安装与配置[转]

    一.Nagios简介 Nagios是一款开源的电脑系统和网络监视工具,能有效监控Windows.Linux和Unix的主机状态,交换机路由器等网络设置,打印机等.在系统或服务状态异常时发出邮件或短信报 ...

  9. Apache http Server 2.4 安装与配置

    前言 Apache官网从2.2之后,不再提供windows的msi或exe安装版本,现在Apache http Server有两个分支2.2及2.4 注意事项 如果之前有安装2.2的版本,请先卸载 A ...

随机推荐

  1. 洛谷P2389 电脑班的裁员(区间DP)

    题目背景 隔壁的新初一电脑班刚考过一场试,又到了BlingBling的裁员时间,老师把这项工作交给了ZZY来进行.而ZZY最近忙着刷题,就把这重要的任务交(tui)给了你. 题目描述 ZZY有独特的裁 ...

  2. FreeMarker的<#if></#if>标签

    <#if target??> xxxx </#if> 上面这段代码判断target??是否为null,如果不为null时才可以执行if里面的内容,为null时则不进到 if里面 ...

  3. Android 自定义 radiobutton

    <RadioButton android:id="@+id/radiobutton_pay_method" android:layout_width="30dp&q ...

  4. 高亮T4模板

    http://t4-editor.tangible-engineering.com/Download_T4Editor_Plus_ModelingTools.html

  5. 51、如何提取android代码中的字符串为系统资源文件 (I18N)

    工具:android studio 步骤1:找到要转为资源文件的字符串并选中,同时按下option+enter,弹出菜单,我们选中extract string resource 步骤2:在弹窗中输入你 ...

  6. 用html5文件api实现移动端图片上传&预览效果

    想要用h5在移动端实现图片上传&预览效果,首先要了解html5的文件api相关知识(所有api只列举本功能所需): 1.Blob对象  Blob表示原始二进制数据,Html5的file对象就继 ...

  7. mini购物车程序

    product_list=[("Iphohe",5800),("Mac Pro Book",12900), ("xiaomi 4c",120 ...

  8. 【LeetCode】移除元素(Remove Element)

    这道题是LeetCode里的第27道题. 题目描述: 给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度. 不要使用额外的数组空间,你必须在原 ...

  9. 菜鸟之路——Linux基础::计算机网络基础,Linux常用系统命令,Linux用户与组权限

    最近又重新安排了一下我的计划.准备跟着老男孩的教程继续学习,感觉这一套教程讲的很全面,很详细.比我上一套机器学习好的多了. 他的第一阶段是Python基础,第二阶段是高等数学基础,主要将机器学习和深度 ...

  10. iOS-@inerface的11条规范写法

    总结一些interface声明时的规范,相关宏的介绍,定义方法时有用的修饰符,编写注释的规范,最终写出一个合格的头文件. 1.读写权限 1.1实例变量的@public,@protected,@priv ...