一,安装时,怎么指定配置文件位置:
1、编译安装时可以指定其配置文件安装路径./configure --sysconfdir=/etc/httpd
2、若仅是想在启动时指定特定的文件,可以使用apachectl -f /etc/httpd/httpd.conf
二.完成安装后,怎么加模块
用apxs在Apache源码树以外编译并安装第三方模块,比如编译mod_foo.c为mod_foo.so的DSO模块:
1 $ cd /path/to/3rdparty 2 $ apxs -c mod_foo.c 3 $ 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加上,
echo
echo 123
即加上一个空的echo和一个空行表示头部,就可以正常输出了.
1 1 #!/bin/bash 2 echo 3 4 echo 123 5 echo 456 //正常输出,如果省略第二行就会报错.
五.cgi配置说明:
scriptAlias /cgi-bin/ /pathto/A/
A目录里面的任何文件都会被当做cgi去执行,所以A中的文件不需要指定扩展名.因为内部指定了执行程序,如:#!/bin/bash
如果我们想在普通目录执行cgi,程序,怎么办?
.htaccess文件 .htaccess指南示范了怎样在没有权限修改httpd.conf文件的情况下**CGI程序。 用户目录 为了允许用户目录中所有以".cgi"结尾的文件作为CGI程序执行,你可以使用以下配置: <Directory /home/*/public_html> Options +ExecCGI AddHandler cgi-script .cgi </Directory> 如果你想在用户目录中指定一个cgi-bin子目录,其中所有的文件都被当作CGI程序,你可以这样配置: <Directory /home/*/public_html/cgi-bin> Options ExecCGI SetHandler cgi-script </Directory>
转载于:https://www.cnblogs.com/yizhou35/archive/2013/05/28/3103784.html