Apache Http Server 安装配置
本文描述APACHE在各个常见的环境中的安装配置和常见问题收集整理。这是一件持续的事情。
本文以:Apache httpd-2.2.21 为例。 以操作系统超级管理员作为操作用户
1.windows 版本安装
windows各个版本的安装基本相同,也非常简单。windows版本安装后,所有的扩展mod都默认全部安装,只需要通过http.conf主配置文件进行LoadModule配置就OK。
1.下载安装包:
http://labs.renren.com/apache-mirror//httpd/binaries/win32/httpd-2.2.21-win32-x86-openssl-0.9.8r.msi
2.安装:采用自定义安装,选择安装目录后,直接安装成服务,其他所有选择默认配置。
2.Linux 编译安装
http://httpd.apache.org/docs/2.2/install.html
环境准备:
1.磁盘空间:50M临时文件空间,至少需要10M的程序空间。
2.编译环境:ANSI-C Compiler,推荐GCC
[root@hadoop00 opt]# gcc -v
Using built-in specs.
Target: i386-redhat-linux
……
gcc version 4.1.1 20070105 (Red Hat 4.1.1-52)
3.apr/apr-util >= 1.2
如果apr/apr-util不存在可以再后续的安装包中先安装。
# rpm -q apr
apr-1.2.7-11
如果版本小于1.2,则需要先安装APR和APR-util
# wget http://labs.renren.com/apache-mirror//httpd/httpd-2.2.21.tar.gz # tar -xzvf httpd-2.2.21.tar.gz # cd httpd-2.2.21
安装apr/apr-util
# Build and install apr 1.2
cd srclib/apr
./configure --prefix=/usr/local/apr-httpd/
make
make install
# Build and install apr-util 1.2
cd ../apr-util
./configure --prefix=/usr/local/apr-util-httpd/ --with-apr=/usr/local/apr-httpd/
make
make install
# Configure httpd
cd ../../
./configure --with-apr=/usr/local/apr-httpd/ --with-apr-util=/usr/local/apr-util-httpd/
编译安装配置参数
命令:./configure
格式:./configure [OPTION]... [VAR=VALUE]...
根据使用场景和个人应用的不同,apache可以配置编译支持的模块功能。
主要采用如下格式:
--disable-FEATURE
定义不编译的功能. 同 --enable-FEATURE=no.
--enable-FEATURE[=ARG]
定义需要编译的功能. 默认值 ARG 表示打开.
--enable-MODULE=shared
定义模块(mod)编译为动态共享对象(DOS).
--enable-MODULE=static
默认编译为后通过静态连接使用
根据官方文档中定义的默认模块和功能已经可选模块功能定义,动态选择编译的功能模块。
模块定义:http://httpd.apache.org/docs/2.2/programs/configure.html#installationdirectories
2.1.APACHE PROXY功能
一般用于方向代理与TOMCAT结合实现HA
--enable-proxy 是代理相关所有的模块
--enable-ssl 是SSL支持
--enable-rewrite 是URL重写支持
# ./configure --prefix=/opt/apache2 \ --enable-proxy=shared \ --enable-ssl=shared \ --enable-rewrite=shared # make # make install # cd /opt/apache2/modules # ls -1 mod_proxy_ajp.so mod_proxy_balancer.so mod_proxy_connect.so mod_proxy_ftp.so mod_proxy_http.so mod_proxy_scgi.so mod_proxy.so mod_rewrite.so mod_ssl.so
2.2.系统服务和自启动
# apache 服务和自启动
Apache加入到系统服务里面:
# cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd
修改httpd
在文件头部加入如下内容:
###
# Comments to support chkconfig on RedHat Linux
# chkconfig: 2345 90 90
# description:http server
###
保存
# chkconfig --add httpd
# chkconfig --level 35 httpd on
等级0表示:表示关机
等级1表示:单用户模式
等级2表示:无网络连接的多用户命令行模式
等级3表示:有网络连接的多用户命令行模式
等级4表示:不可用
等级5表示:带图形界面的多用户模式
等级6表示:重新启动