一,安装时,怎么指定配置文件位置:
1、编译安装时可以指定其配置文件安装路径./configure --sysconfdir=/etc/httpd2、若仅是想在启动时指定特定的文件,可以使用apachectl -f /etc/httpd/httpd.conf二.完成安装后,怎么加模块用在Apache源码树以外编译并安装第三方模块,比如编译
mod_foo.c
为mod_foo.so
的DSO模块:
1 $ cd /path/to/3rdparty2 $ apxs -c mod_foo.c3 $ apxs -i -a -n foo mod_foo.la
三.apache配置cgi:
默认安装后,cgi是开启的.在www目录下会有cgi-bin文件夹.
访问localhost/cgi-bin/test-cgi三.apache安装在/lamp/httpd目录下,重启的命令时:/lamp/httpd/bin/apachectl -k restart为了简化命令,键一个链接:ln -s /lamp/httpd/bin/apachectl /usr/bin/http
以后 http -k start就可以开启了.
四.写shell脚本时,每次都出现
[Tue May 28 15:12:52 2013] [error] [client ::1] Premature end of script headers: 1[Tue May 28 15:12:53 2013] [error] [client ::1] Premature end of script headers: 1[Tue May 28 15:12:53 2013] [error] [client ::1] Premature end of script headers: 1[Tue May 28 15:12:53 2013] [error] [client ::1] Premature end of script headers: 1[Tue May 28 15:15:48 2013] [error] [client ::1] malformed header from script. Bad header=x: 1[Tue May 28 15:17:36 2013] [error] [client ::1] malformed header from script. Bad header=x: 1[Tue May 28 15:18:16 2013] [error] [client ::1] malformed header from script. Bad header=33: 1[Tue May 28 15:21:03 2013] [error] [client ::1] malformed header from script. Bad header=fffff: 1
在头文件前 echo content-type:text/html加上,
echoecho 123 即加上一个空的echo和一个空行表示头部,就可以正常输出了.
1 1 #!/bin/bash2 echo3 4 echo 1235 echo 456 //正常输出,如果省略第二行就会报错.
五.cgi配置说明:
scriptAlias /cgi-bin/ /pathto/A/A目录里面的任何文件都会被当做cgi去执行,所以A中的文件不需要指定扩展名.因为内部指定了执行程序,如:#!/bin/bash如果我们想在普通目录执行cgi,程序,怎么办?
.htaccess文件.htaccess指南示范了怎样在没有权限修改httpd.conf文件的情况下激活CGI程序。用户目录为了允许用户目录中所有以".cgi"结尾的文件作为CGI程序执行,你可以使用以下配置:Options +ExecCGIAddHandler cgi-script .cgi 如果你想在用户目录中指定一个cgi-bin子目录,其中所有的文件都被当作CGI程序,你可以这样配置:Options ExecCGISetHandler cgi-script