我的编程空间,编程开发者的网络收藏夹
学习永远不晚

怎么进行mod_Python模式与CGI模式对比

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

怎么进行mod_Python模式与CGI模式对比

本篇文章给大家分享的是有关怎么进行mod_Python模式与CGI模式对比,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

在Apache服务器下运行Python script的时候,没有添加AddHandler cgi-script .py,那内容就会以text文本式样显示在浏览器中,希望本文能给大家带来一些有用的信息。

发现Apache的mod_python版本还不支持Python 2.6更别说3.0.1了,只有2.5之下的,折腾着卸载和安装,***还没搞定,就先搁一边了。现在因为已经安装了2.6的Python,以及支持2.6的Eric4,就不想再重新安装2.5来继续配置Apache下mod_python了。

后来发现了一篇文章Running Python as CGI in Apache in Windows ,讲述以CGI模式代替mod_python模式来运行python script。还有这篇Python for Windows 。做法是:打开httpd.conf,找到”#ScriptInterpreterSource Registry “,移除前面的注释# (如果找不到这行,就自己添加进去)

找到“Options Indexes FollowSymLinks ”这句,在后面加上”ExecCGI “。(那个”Indexes “***也能去掉,因为如果不去掉的话。目录下面没有index.html这种文件,就会显示出目录列表下的所有文件,所以有安全漏洞问题。如果去掉Indexes,而且没有index.html文件的话,就会显示一个Forbidden页面)

找到”AddHandler cgi-script .cgi “,在后面加上 .py。如果没有这句,可以自己添加 “AddHandler cgi-script .py” 重新启动Apache即可 (有的时候restart会导致Apache死掉,所以碰到这种情况的人可以stop先再start)

做法是:打开httpd.conf,找到”#ScriptInterpreterSource Registry “,移除前面的注释# (如果找不到这行,就自己添加进去) 找到“Options Indexes FollowSymLinks ”这句,在后面加上”ExecCGI “。(那个”Indexes “***也能去掉。

因为如果不去掉的话,目录下面没有index.html这种文件,就会显示出目录列表下的所有文件,所以有安全漏洞问题。如果去掉Indexes,而且没有index.html文件的话,就会显示一个Forbidden页面)

找到”AddHandler cgi-script .cgi “,在后面加上 .py。如果没有这句,可以自己添加 “AddHandler cgi-script .py” 重新启动Apache即可 (有的时候restart会导致Apache死掉,所以碰到这种情况的人可以stop先再start)

然后创建一个test.py script:

print "Content-type: text/html"  print ""  print "<html><head></head><body>"  print "Hello World"  print "</body></html>"

注意第二句print “”不能少,如果没有这句,会引起一个 “500 Internal Server Error” 错误。在浏览器中运行http://localhost/test.py,Hello World两个字被输出后表明运行正常。另外,有些错误提示如下:没有添加ScriptInterpreterSource Registry,会出现500 Internal Server Error 错误。

没有添加ExecCGI,会出现403 Forbidden You don’t have permission to access /test.py on this server 。 没有添加AddHandler cgi-script .py,那内容就会以text文本式样显示在浏览器中。
注 :

添加ScriptInterpreterSource Registry的用意是让Windows用Registry来找到Python的安装地方ExecCGI是让python script可以运行在任意目录下面,因为Apache默认是让cgi script运行在cgi-bin目录下。

而我把test.py放到htdocs下运行就会出现403 Forbidden的问题。所以需要加上ExecCGI,这样就可以在htdocs下运行.py script了。但是ExceCGI会有安全漏洞的问题。用FastCGI会安全一些。但是前提是需要安装上FastCGI才可以。CGI模式比mod_python模式要慢。所以以后有机会在别的电脑上再试试mod_python模式吧。

以上就是怎么进行mod_Python模式与CGI模式对比,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

怎么进行mod_Python模式与CGI模式对比

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

怎么进行mod_Python模式与CGI模式对比

本篇文章给大家分享的是有关怎么进行mod_Python模式与CGI模式对比,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。在Apache服务器下运行Python script的时
2023-06-17

怎么在php中实现CGI模式

这期内容当中小编将会给大家带来有关怎么在php中实现CGI模式,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1、说明是一种重要的互联网技术,可以让一个客户端,从网页浏览器向执行在网络服务器上的程序请求数据
2023-06-15

java设计模式—静态代理模式(聚合与继承方式对比)

一、概述1.目标:要在Tank的move()方法做时间代理及日志代理(可以设想以后还要增加很多代理处理),且代理间的顺序可活更换2.思路:(1)聚合:代理类聚合了被代理类,且代理类及被代理类都实现了movable接口,则可实现灵活多变,具体
2023-05-31

PHP 设计模式与框架的对比

php 设计模式和框架的对比:设计模式为已验证的代码解决方案,提供可重复性和低复杂性,而框架为预建组件集合,提供自定义性和依赖项。实战中,设计模式如单例模式可确保类只有一个实例,而框架中的 eloquent orm 允许轻松操作数据库。根据
PHP 设计模式与框架的对比
2024-05-07

java 中单例模式饿汉式与懒汉式的对比

java 中单例模式饿汉式与懒汉式的对比概念:保证一个类仅有一个实例,并提供一个访问它的全局访问点。以前我们的做法是设置一个全局变量,也就是让它使得一个对象被访问。但是它不能防止你实例多个对象。这时我们可以让类自身负责保存它的唯一实例,这个
2023-05-31

php中cli和cgi运行模式有什么区别

区别:CLI指的是命令行的运行模式,即在控制台或者是shell中键入命令执行PHP脚本代码;而CGI是公共网关接口的运行模式,就是Apache在遇到PHP脚本的时候会将PHP程序提交给CGI应用程序(php-cgi.exe)解释,解释之后的结果返回给Apache,然后再返回给相应的请求用户。
2023-05-14

详解express与koa中间件模式对比

起因 最近在学习koa的使用, 由于koa是相当基础的web框架,所以一个完整的web应用所需要的东西大都以中间件的形式引入,比如koa-router, koa-view等。在koa的文档里有提到:koa的中间件模式与express的是不一
2022-06-04

对Canvas渲染模式进行深入分析

深入解析Canvas的渲染模式,需要具体代码示例一、引言Canvas是HTML5标准中的一个重要元素,可以实现基于像素的图形渲染。它提供了丰富的API,使得开发者可以通过JavaScript在浏览器上绘制2D图形、动画和游戏等。在使用Ca
对Canvas渲染模式进行深入分析
2024-01-17

Win10 9926如何手动开启平板模式与桌面模式进行切换

Win10新增功能之一就是可以在PC端上使用平板模式。在新版本号9926中,桌面模式与平板模式无法自动切换,需要手动切换。Win10 9926如何手动开启平板模式?开启平板模式后有何变化?可能有朋友会说,直接点击开始菜www.cppcns.
2023-06-11

win10怎么进安全模式

要进入Windows 10的安全模式,您可以按照以下步骤操作:1. 单击“开始”按钮,然后点击“电源”图标。2. 按住“Shift”键并同时点击“重新启动”选项。3. 系统将会重新启动,并进入“选择一个选项”屏幕。4. 选择“疑难解答”选项
2023-08-21

C++单例模式怎么进行释放控制

这篇文章主要介绍“C++单例模式怎么进行释放控制”,在日常操作中,相信很多人在C++单例模式怎么进行释放控制问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C++单例模式怎么进行释放控制”的疑惑有所帮助!接下来
2023-06-17

PHP行为型模式之责任链模式怎么实现

本篇内容介绍了“PHP行为型模式之责任链模式怎么实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!前言责任链模式(Chain of Resp
2023-07-05

PHP行为设计模式之策略模式怎么实现

这篇“PHP行为设计模式之策略模式怎么实现”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“PHP行为设计模式之策略模式怎么实现
2023-07-06

Centos6.8怎么进入救援模式

这篇文章主要介绍了Centos6.8怎么进入救援模式,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。使用版本:Centos6.8救援模式有什么作用:◆可以更改root密码;◆恢
2023-06-10

LINUX怎么进入文本模式

本篇内容主要讲解“LINUX怎么进入文本模式”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“LINUX怎么进入文本模式”吧!修改/etc/inittab文件,其中有一行id:3:initdefau
2023-06-10

mongodb怎么进入维护模式

要将MongoDB进入维护模式,可以执行以下步骤:1. 使用管理员权限登录到MongoDB的shell中。2. 执行以下命令进入维护模式:```use admindb.runCommand({replSetMaintenance: 1})`
2023-08-30

win11怎么进入恢复模式

进入恢复模式的步骤如下:1. 首先,点击“开始”菜单,并选择“设置”。2. 在设置窗口中,点击“更新和安全”。3. 在“更新和安全”窗口中,选择“恢复”选项卡。4. 在“恢复”选项卡中,找到“高级启动”部分,并点击“立即重新启动”。5. 在
2023-08-22

win10怎么进入恢复模式

要进入Windows 10的恢复模式,可以按照以下步骤操作:1. 重启计算机。按住Shift键,同时点击“开始菜单”中的“电源”按钮,再选择“重新启动”。2. 在重启的过程中,选择“疑难解答”。3. 进入“疑难解答”后,可以选择不同的恢复选
2023-08-22

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录