本文档为Appache由版本2.0.65升级到版本2.4.29

安装需要先进行依赖软件包的安装,请检查相应依赖软件包安装情况,

如系统已经正确安装相应依赖软件包,可略过,本文所述版本升级不会覆盖先前的apache服务器

yum install expat-devel

yum install compat-libstdc++-33

1.安装包准备

expat-2.1.0.tar.gz

apr-1.6.3.tar.gz

apr-util-1.5.4

pcre-8.41.tar.gz


2.安装expat-2.1.0

  cd /tmp

  tar -zxvf expat-2.1.0.tar.gz

  cd expat-2.1.0

  ./configure

  make && make install

3.安装apr-1.6.3.tar.gz

    cd /tmp

  tar -zxvf apr-1.6.3.tar.gz

  cd?apr-1.6.3

  ./configure --prefix=/usr/local/apr

  make && make install

4. 安装apr-util-1.5.4

  cd /tmp

  tar -jxvf?apr-util-1.5.4.tar.bz2

  cd apr-util-1.5.4

  ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

  make && make install

5.安装pcre-8.41?

    cd /tmp

  tar -zxvf pcre-8.41.tar.gz

  cd pcre-8.41

  ./configure --prefix=/usr/local/pcre

  make && make install

6.安装httpd-2.4.29

   cd /tmp

   tar -zxvf httpd-2.4.29.tar.gz

  cp -rf?apr-1.6.3 httpd-2.4.29/srclib/apr

  cp -rf?apr-util-1.5.4 httpd-2.4.29/srclib/apr-util

    cd srclib/apr;

  make

  cd ..

  cd srclib/apr-util;

  make

  cd httpd-2.4.29

  ./configure --prefix=/usr/local/apache --enable-mods-shared=all --enable-deflate --enable-speling --enable-cache --enable-file-cache --enable-disk-cache --enable-mem-cache  --enable-rewrite --enable-so --with-apr=/usr/local/apr/ --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre/ --with-included-apr

  make && make install

7.  上传weblogic插件,利用weblogic插件做转发(http://www.oracle.com/technetwork/middleware/webtier/downloads/index.html中下载Oracle WebLogic Server Proxy Plugins 12.2.1.3并解压)

    将WLSPlugin12.2.1.3.0-Apache2.2-Apache2.4-Linux_x86_64-12.2.1.3.0中的bin、jlib、lib上传/usr/local/apache/weblogic-plugin目录中

    设置环境变量LD_LIBRARY_PATH

    export LD_LIBRARY_PATH=/usr/local/apache/weblogic-plugin/lib/$LD_LIBRARY_PATH

    echo "LD_LIBRARY_PATH=/usr/local/apache/weblogic-plugin/lib/$LD_LIBRARY_PATH">>/etc/profile

    或者(在/etc/ld.so.conf.d目录下新建文件libc.conf,将/usr/local/apache/weblogic-plugin/lib/usr/local/lib目录加到libc.conf文件中,然后执行ldconfig命令)

8.  修改配置文件

    a.将2.4.29版本中的配置文件中的LoadModule部分复制到老版本的配置文件中(重复部分删除)

LoadModule weblogic_module    /usr/local/apache/weblogic-plugin/lib/mod_wl_24.so

LoadModule rewrite_module     modules/mod_rewrite.so

LoadModule headers_module     modules/mod_headers.so

LoadModule authn_file_module modules/mod_authn_file.so

LoadModule authn_core_module modules/mod_authn_core.so

LoadModule authz_host_module modules/mod_authz_host.so

LoadModule authz_groupfile_module modules/mod_authz_groupfile.so

LoadModule authz_user_module modules/mod_authz_user.so

LoadModule authz_core_module modules/mod_authz_core.so

LoadModule access_compat_module modules/mod_access_compat.so

LoadModule auth_basic_module modules/mod_auth_basic.so

LoadModule reqtimeout_module modules/mod_reqtimeout.so

LoadModule filter_module modules/mod_filter.so

LoadModule mime_module modules/mod_mime.so

LoadModule log_config_module modules/mod_log_config.so

LoadModule env_module modules/mod_env.so

LoadModule setenvif_module modules/mod_setenvif.so

LoadModule version_module modules/mod_version.so

LoadModule unixd_module modules/mod_unixd.so

LoadModule status_module modules/mod_status.so

LoadModule autoindex_module modules/mod_autoindex.so

LoadModule dir_module modules/mod_dir.so

LoadModule alias_module modules/mod_alias.so

LoadModule userdir_module modules/mod_userdir.so

LoadModule negotiation_module modules/mod_negotiation.so

    b.将 Options -Indexes FollowSymLinks改成Options Indexes FollowSymLinks

    c.将DefaultType text/plain注释掉(#DefaultType text/plain),原因是Apache2.4 不在使用DefaultType 参数。

    d.MaxClients改名为MaxRequestWorkers,精确的描述出了它是什么。对于异步的MPMs,就像事件,客户的最大数不等于工作的线程数。旧的名字仍旧被支持。

    e.将“Order deny,allow  Deny from all改为”Require all denied

      将“Order allow,deny Allow from all”改为Require all granted

      将“Order Deny,Allow   Deny from all   Allow from example.org”改为Require host example.org

#######################################################################################################################

配置Apache日志格式

下载cronolog-1.6.2.tar.gz

tar -zxvf cronolog-1.6.2.tar.gz

./configure

make

make install

#默认安装在/usr/local/sbin/下,将以下配置复制到http.conf中即可

LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined

LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b" common

LogFormat "%{Referer}i -> %U" referer

LogFormat "%{User-agent}i" agent

CustomLog "|/usr/local/sbin/cronolog /home/apache3log/%Y/%m%d/access_log.%Y-%m-%d-%H" common

CustomLog "|/usr/local/sbin/cronolog /home/apache3log/%Y/%m%d/referer_log.%Y-%m-%d-%H" referer

CustomLog "|/usr/local/sbin/cronolog /home/apache3log/%Y/%m%d/agent_log.%Y-%m-%d-%H" agent