linux下在Apache中配置python

如果想要Apache可以执行python之类的网页程序,那么就得安装一些额外的模块,python程序安装的模块为mod_python install -y  mod_python进行安装

第一步,配置apache

在httpd.conf中,找到:

AddHandler cgi-script .cgi

把它改为:

AddHandler cgi-script .cgi .py

其他设置:

<Directory "/var/www/cgi-bin">
    AllowOverride  ALL
    Options +ExecCGI
    Order allow,deny
    Allow from all
</Directory>
ScriptAlias /cgi-bin/  /var/www/cgi-bin/

“/var/www/cgi-bin”是你放置python程序的地方,可以改成你自己的目录,重要的是那个“+ExeCGI”,它的意思让此目录具有执行CGI的权限

第二步,配置mod_python

mod_python安装好后,默认有个配置文件:/etc/httpd/conf.d/python.conf,这个文件在apache重启时会自动读入

要注意的是:

LoadModule python_module modules/mod_python.so

看是否有这句,并且去掉注释。其他要更改的地方:

<Location /var/www/cgi-bin>

SetHandler python-program

PythonPath "sys.path+ [‘/var/www/cgi-bin‘]"

PythonHandler  hellox

</Location>

<Directory /var/www/cgi-bin>
    AddHandler mod_python .py
    PythonHandler hellox
    PythonDebug On
</Directory>

把“/var/www/cgi-bin"/ 改为你自己房子python程序的目录。其中,第一条指令是将所有URL末尾为.py的请求转发给mod_python处理程序,mod_python接收到请求之后再寻找适当的PythonHandler处理程序,这里是python文件的名字。第二条指令只定义了一个hellox处理程序,注意这个程序名不要跟系统已有的程序名字一样。最后一条是启用Python代码调试功能,以便在代码运行出错时输出Python解释器返回的错误。

第三部,编写python文件进行测试

我编写的hellox.py:

#!/usr/bin/python2
from mod_python import apache 
def handler(req): 
    req.content_type = ‘text/plain‘ 
    req.write("Hello World!") 
    return apache.OK

测试文件一定要按照下面的格式才行:

def  handler(req):
     .....
    return apache,OK

更改权限:chmod a+x  /var/www/cgi-bin/hellox.py

最后,在浏览器输入 http://192.168.111.50/cgi-bin/hellox.py,屏幕上出现“hello,world”。

时间: 2024-10-12 13:12:06

linux下在Apache中配置python的相关文章

linux 下安装 mysql 并配置 python 开发环境

1.安装 mysql ,安装过程中将提示设置 root 用户的密码,默认可以设置为 rootadmin . $ sudo apt-get install mysql-server 2.安装 mysql 开发工具(不安装时,安装 MySQL-python 提示错误 "mysql_config not found"). $ sudo apt-get install libmysqld-dev 3.安装 python 的 mysql 库 MySQL-python (首先安装 python-d

linux下安装apache与配置tomcat. 超详细分享.

以下就是我在 Red hat enterprise linux5 环境中安装apache的详细过程.  基本复制黏贴命令进行执行即可. 下载 httpd-2.4.10.tar.gz,apr-1.5.1.tar.gz,apr-util-1.5.4.tar.gz,pcre-8.36.zip,tomcat-connectors-1.2.40-src.tar.gz 或浏览我的资源. apache_all.zip. 不需要资源分. 比如我默认放到 /Software下. 则进入这个目录开始. 安装 apr

让你提前认识软件开发(51):VC++集成开发环境中Linux下Pclint工程的配置方法及常见错误修改

第3部分 软件研发工作总结 VC++集成开发环境中Linux下Pclint工程的配置方法及常见错误修改 [文章摘要] Pclint是一种C/C++软件代码静态分析工具.它是一种更加严格的编译器,能够发现普通编译器所不能发现的代码中的很多问题,因此被广泛应用于软件开发项目中. 本文介绍了如何在VC++集成开发环境中配置Linux下的Pclint工程,给出了C语言中pclint规则A检查的常见错误,并描述了对应的修改办法. [关键词] VC++  Pclint  配置  操作  修改 1. 前言 P

Linux下使用Apache搭建Web网站服务器

Linux下使用Apache搭建Web网站服务器 实验目标 apache服务器常见概念 apache服务器安装及相关配置文件 实战: 例1:为公司内网搭建一个web服务器 例2:取消apache默认欢迎页: 例3:使用rpm搭建lamp 环境 例4, 使用别名,引用网站根目录以外的路径. 例6:打开软链接功能. 通过软件链接直接引用网站根目录以外的内容 例5,当一个目录下没有默认首页时,访问http://192.168.1.63/phpmyadmin/禁止显示目录列表 例7:通过用户认证的方式,

[转载]linux下编译php中configure参数具体含义

编译N次了   原来这么回事 原文地址:linux下编译php中configure参数具体含义作者:捷心特 php编译参数的含义 ./configure –prefix=/usr/local/php                      php 安装目录 –with-apxs2=/usr/local/apache/bin/apxs –with-config-file-path=/usr/local/php/etc      指定php.ini位置 –with-mysql=/usr/local

Linux下搭建Apache服务器(完整版)

Linux下搭建Apache服务器(完整版) 什么是Apache? Apache Licence是著名的非盈利开源组织Apache采用的协议.该协议和BSD类似,同样鼓励代码共享和尊重原作者的著作权,同样允许代码修改,再发布(作为开源或商业软件).需要满足的条件也和BSD类似 Apache主要特点 1.开放源代码.跨平台应用 2.支持多种网页编程语言 3.模块化设计 .运行稳定.良好的安全性 Apache软件版本 1.X  1.目前最高版本是1.3,运行稳定  2.向下兼容性较好,但缺乏一些较新

Linux下使用Apache的Httpd+Mod_jk+Tomcat搭建Web集群服务

Linux下使用Apache的Httpd+Mod_jk+Tomcat搭建Web集群服务 目的 ?? 使用多个tomcat服务器来对请求进行分流,防止单个服务器压力过重.这里为了简单,只使用两个tomcat. 软件 apache httpd-2.2.31(下载地址:https://httpd.apache.org/download.cgi) apache tomcat-7.0.69(下载地址:https://tomcat.apache.org/download-70.cgi) tomcat-con

关于linux下卸载apache后安装apache

事实说明,好记性不如烂笔头,更何况没有好记性就更需要做一些必要的记录了,因为随着时光的流逝,很多事情会渐渐的忘记,这时如果看一下之前的笔记就能事半功倍了! 以前在linux下配置了一个系统监视软件zabbix,总体用起来还不错,因为需要在网页端显示,所以需要搭建lamp环境,然后配置apache2使打开本地网页就显示那个为主页,以后就没再碰过,也没做记录,当时的配置文件和信息早已经忘记,后来胡搞了一通,发现apache服务运行不了了,打开里面的配置文件发现里面都是空的,没有任何信息,于是我开始了

Linux下的XAMPP基本配置技巧(设置虚拟主机、添加FTP账户等)

Linux下的XAMPP基本配置技巧(设置虚拟主机.添加FTP账户等) xampp安装好之后就只有一个默认站点及一个默认nobody的ftp账户,这显然不符合我们平时的需求了,那么下面就来讲一下如何设置并管理多个虚拟主机及ftp账户了,至于xampp的安装不在此讨论范围,读者可自行参阅官网的相关说明. 1.首先讲一下ftp账户的配置: xampp采用的是proftpd服务端,这个不像我们Win环境下常用的Serv-U,用户帐户不是在服务端工具里面进行配置,而是在linux系统帐户里面配置的.因此