Apache配置实现cgi

装完Apache,需要修改apache的配置文件:

nano /etc/httpd/conf/httpd.conf

配置文件中有

ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"这个指令,指示了默认的cgi-bin的路径。

/var/www/cgi-bin/,在配置文件中也可以看到。

还需要配置

AddHandler cgi-script .cgi .pl

该配置默认被注释掉了,设置了cgi的后缀名

编写一个cgi文件,内容如下:

#!/bin/bash
echo "Content-type: text/html"
echo ""
echo "Hello World"

注意,该文件必须是要UNIX文件格式的,可以editpro等工具编写。将该文件命名为first.cgi,然后放入/var/www/cgi-bin/目录中。

然后运行http://wusqcentos:9000/cgi-bin/first.cgi,可以发现,有错误

有错误不可怕,默认的httpd的错误日志在/var/log/httpd/error_log里可以看到,也可以去http的软连接中访问/etc/httpd/logs/error_log

打开error_log文件,可以看到如下的错误:

[Thu Jan 22 09:06:54 2015] [error] [client 192.168.6.2] (13)Permission denied: exec of ‘/var/www/cgi-bin/first.cgi‘ failed

[Thu Jan 22 09:06:54 2015] [error] [client 192.168.6.2] Premature end of script headers: first.cgi

说明了权限被拒绝了。将first.cgi的权限设置成755

chmod 755 /var/www/cgi-bin/first.cgi

再次运行http://wusqcentos:9000/cgi-bin/first.cgi,发现就正常显示了

同样的,可以编辑一个perl文件,也可以以cgi的方式运行

#!/usr/bin/perl
print "Content-type: text/html\n\n";
print "Hello, World.";
时间: 2025-01-02 16:25:28

Apache配置实现cgi的相关文章

Apache 配置 https

## Apache 配置 https > Apache 版本: **2.4.10** Linux 版本 : **Debian** ### 安装Apache控制台命令:` sudo apt-get install apache2 `安装好了Apache2会自动启动,但是自动启动的不包含https仅仅是http **默认的配置路径** Apache配置文件路径: ` cd /etc/apache2/`Apache默认日志路径: `cd /var/log/apache2` ### 配置https###

selinux 限制 apache exec执行cgi

一.起因某日发现smokeping访问失败,发布的apache 进程不存在:在/usr/local 下找不到任何apache文件,怀疑apache是rpm安装,使用/etc/init.d/httpd启动后果真listen 8001端口··· 二.排查1.获取error日志的关键内容启动后尝试刷新8001 下的smokeping页面,发现仍旧错误,哎,rpm装的apache error日志在哪来着?想不起来了,没办法,迂回一下:首先找到apache的进程号,需要work进程[[email prot

apache 安装配置 以及php-fpm结合apache配置

解决依赖关系 yum -y install pcre-devel 下载apr  apr-util:http://apr.apache.org/download.cgi 编译安装apr:  ./configure --prefix=/usr/local/apr make && make install 编译安装apr-util: ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr  make &&

apache配置 php中没有php5apache2_4.dll

今天,在win7系统下安装Apache+PHP+MySQL时,终于体会到了版本多也不一定是好事,各种不兼容,主要是因为动态包的多少问题.下面就说一下php配置Apache的问题: 在给apache配置php的过程中,如果php安装目录里没有php5apache2_4.dll,一定是下载的版本不对. php 5.5有好几个版本: VC11 x86 Non Thread Safe VC11 x64 Non Thread Safe VC11 x86 Thread Safe VC11 x64 Threa

apache配置Options详解

http://www.365mini.com/page/apache-options-directive.htm Options指令是Apache配置文件中一个比较常见也比较重要的指令,Options指令可以在Apache服务器核心配置(server config).虚拟主机配置(virtual host).特定目录配置(directory)以及.htaccess文件中使用.Options指令的主要作用是控制特定目录将启用哪些服务器特性. Options指令常见的配置示例代码如下: <Direc

Apache指南:CGI动态页面

概要 相关模块 相关指令 mod_alias mod_cgi AddHandler Options ScriptAlias CGI(公共网关接口[Common Gateway Interface])定义了网站服务器与外部内容协商程序之间交互的方法,通常是指CGI程序或者CGI脚本,是在网站上实现动态页面的最简单而常用的方法.本文将对如何在Apache网站服务器上建立CGI以及如何编写CGI程序作介绍. 配置Apache以允许CGI 要让CGI程序能正常运作,必须配置Apache以允许CGI的执行

apache 配置文件管理

1. Apache配置系统 从整体来看apache的配置系统包括三个部分: (1) 配置文件:比如 httpd.conf   .htaccess (2) 配置指令:在配置文件 httpd.conf  .htaccess 里面的任意一行都是一个配置指令 (3) 配置信息的保存和读取:配置信息配置完成后会在Apache里面按照一定的数据结构进行保存,在Apache的运行过程中,任何需要配置信息的时候就去读取并执行. 2. Apache的配置文件 (1) httpd.conf:是Apache的主配置文

windows下Apache配置SSL安全连接

什么是SSL? SSL(Secure Socket Layer): 是为Http传输提供安全的协议,通过证书认证来确保客户端和网站服务器之间的数据是安全.Open SSL下载地址:http://www.openssl.org/source/ 一.下载并安装 支持SSL的 Apache  1.安装配有SSL模块的apache, 下载地址http://httpd.apache.org/download.cgi#apache23附件提供httpd-2.2.15-win32-x86-openssl-0.

mac os利用xampp实现apache下的cgi

折腾了两天终于把问题解决了,mac os是10.10.3..够新了吧 系统原生的apache配置cgi老是配不好,突然发现xampp也有macos版的,准备下下来试试. 安装完成后,打开apache服务 新建一个文件test.py 1 #!/usr/bin/python 2 print "Content-type: text/html" 3 print 4 print "<html><head>" 5 print "" 6