centos7 安装配置apache httpd服务

官方文档:http://httpd.apache.org/docs/2.4/install.html#comments_section

1.准备

  主包:

      httpd-2.4.17.tar.gz  http://mirrors.cnnic.cn/apache//httpd/httpd-2.4.17.tar.gz  

  依赖:

      apr-1.5.2.tar.gz, http://apache.dataguru.cn//apr/apr-1.5.2.tar.gz

      apr-util-1.5.4.tar.gz, http://apache.dataguru.cn//apr/apr-util-1.5.4.tar.gz

      pcre-8.37.tar.gz, http://exim.mirror.fr/pcre/pcre-8.37.tar.gz

      配置apache与tomcat集成时用:

      tomcat-connectors-1.2.41-src http://apache.fayea.com/tomcat/tomcat-connectors/jk/tomcat-connectors-1.2.41-src.tar.gz

2. 将上述包上传到服务器(我把它们放在/var/public_root下,准备把http服务安装在/opt下)

  2.1 解压pcre    

    # tar jxvf pcre-8.37.tar.gz
2.2 解压httpd
    
# tar jxvf httpd-2.4.16.tar.gz
2.3 将apr与apr-util解压到httpd-2.4.17/srclib目录下
 
    # tar jxvf apr-1.5.2.tar.bz2 -C httpd-2.4.17/srclib
    # tar jxvf apr-util-1.5.4.tar.bz2 -C httpd-2.4.17/srclib
2.4 将apr-1.5.2和apr-util-1.5.4分别改名为apr和apr-util
    # cd /var/public_root/httpd-2.4.17/srclib/
    # mv apr-1.5.2 apr
    # mv apr-util-1.5.4 apr-util
3. 安装依赖包
  安装位置: /opt/软件名
  apr与apr-util不需要单独安装,只需要在安装httpd的时候指定一下
  3.1
安装pcre
    
# cd /var/public_root/pcre-8.37
    # make & make install 编译并安装
    # make clean 清楚make产生的垃圾
4. 安装httpd
    
# cd /var/public_root/httpd-2.4.17
    # ./configure --prefix=/usr/local/apache -with-pcre=/usr/local/pcre-8.37/bin/pcre-config -with-included-apr
    # make & make install
    # make clean
5. 配置httpd.conf
  编辑/usr/local/apache/conf/httpd.conf
  Listen值改为9080
  ServerName值改为localhost:9080
6. 启动
# cd /opt/apache/bin/
# ./apachectl -k start 

   7. 在浏览器里输入localhost:9080看到It Works! 就表示成功了。

   8. apache与tomcat集成

  8.1 在/opt/httpd-2.4.17/conf新建3个文件: mod_jk.conf,workers.properties和uriworkermap.properties.

    mod_jk.conf    

     JkWorkersFile conf/workers.properties
    JkMountFile conf/uriworkermap.properties
    # Where to put jk logs
    JkLogFile logs/mod_jk.log
    # Set the jk log level [debug/error/info]
    JkLogLevel info
    # Select the log format
    JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
    # JkOptions indicate to send SSL KEY SIZE,
    JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
    # JkRequestLogFormat set the request format
    JkRequestLogFormat "%w %V %T"
 
    # 将所有servlet 和jsp请求通过ajp13的协议送给Tomcat,让Tomcat来处理
    JkMount /*.htm worker1    # 将所有以*.htm的结尾请求交给worker1处理,我这里的*.htm与*.html请求不同,*.htm是动态请求,需要tomcat处理
    JkMount /*.jsp worker1  # 将所有以*.htm的结尾请求交给worker1处理,
    JkMount /servlet/* worker1  

    uriworkmap.properties

    #将所有请求交给worker1处理

    /*=worker1
    !/*.gif=worker1
    !/*.jpg=worker1
    !/*.png=worker1
    !/*.css=worker1
    !/*.js=worker1
    !/*.html=worker1

    workers.properties

    # Defining a worker named worker1 and of type ajp13

    worker.list=worker1
    #Set properties for worker1
    worker.worker1.type=ajp13
    worker.worker1.host=localhost
    worker.worker1.port=8009
    worker.worker1.lbfactor=1

  8.2 修改httpd.conf

    在最后面添加
    LoadModule jk_module modules/mod_jk.so
    Include /opt/httpd-2.4.17/conf/mod_jk.conf

  8.3 修改/opt/conf/server.xml字段

    找到

    <!-- You should set jvmRoute to support load-balancing via AJP ie :
       <Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1">
    -->
    <Engine name="Catalina" defaultHost="localhost">

  修改为

  

  也就是加了个  jvmRoute="worker1",这个worker1一定要与workers.properties中对应

  8.4 注意

  httpd 服务的DocumentRoot一定要与tomcat的docBase相同,之前就是因为不同,访问主页一直都是返回It Worked!

  我tomcat的docBase是"/project/dld",所以DocumentRoot也要是"/project/dld",
  修改成下面这个样子

  

  8.5 重起tomcat与httpd服务

  # cd /opt/apache-tomcat-7.0.42/bin
  # ./shutdown.sh
  # ./startup.sh
  # cd /opt/httpd-2.4.17/bin
  # ./apachectl restart

  在浏览器里输入localhost应该可以直接看到主页了

 

 

 

    

 

 

 

 
 
 
 
 


posted @ 2015-11-23 12:28  cglworkBook  阅读(838)  评论(0编辑  收藏  举报