zoukankan      html  css  js  c++  java
  • 编译安装apache

    1.安装依赖库:“Development  Tools”  “Server Platform Development”  pcre-devel

    2.安装apr,apr-util

      从yum源安装或去apr网站下载安装包,这是采用编译安装。

      安装apr:

      cd apr

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

      安装apr-util:

      cd apr-util

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

    3.安装apache

      ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-ssl --enable-so --enable-rewrite --enable-zlib --enable-pcre  --enable-cache --enable-cache-disk  --enable-cgi --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork

    4.修改httpd的主配置文件,设置其Pid文件的路径

      在httpd.conf文件中添加如下行:

      PidFile “/var/run/httpd.pid”

    5.添加环境变量

     vim /etc/profile.d/httpd.sh

     export PATH=/usr/loca/apache/bin:$PATH

    6.

    提供SysV服务脚本/etc/rc.d/init.d/httpd,内容如下:

    #!/bin/bash
    #
    # httpd Startup script for the Apache HTTP Server
    #
    # chkconfig: - 85 15
    # description: Apache is a World Wide Web server. It is used to serve
    # HTML files and CGI.
    # processname: httpd
    # config: /etc/httpd/conf/httpd.conf
    # config: /etc/sysconfig/httpd
    # pidfile: /var/run/httpd.pid

    # Source function library.
    . /etc/rc.d/init.d/functions

    if [ -f /etc/sysconfig/httpd ]; then
    . /etc/sysconfig/httpd
    fi

    # Start httpd in the C locale by default.
    HTTPD_LANG=${HTTPD_LANG-"C"}

    # This will prevent initlog from swallowing up a pass-phrase prompt if
    # mod_ssl needs a pass-phrase from the user.
    INITLOG_ARGS=""

    # Set HTTPD=/usr/sbin/httpd.worker in /etc/sysconfig/httpd to use a server
    # with the thread-based "worker" MPM; BE WARNED that some modules may not
    # work correctly with a thread-based MPM; notably PHP will refuse to start.

    # Path to the apachectl script, server binary, and short-form for messages.
    apachectl=/usr/local/apache/bin/apachectl
    httpd=${HTTPD-/usr/local/apache/bin/httpd}
    prog=httpd
    pidfile=${PIDFILE-/var/run/httpd.pid}
    lockfile=${LOCKFILE-/var/lock/subsys/httpd}
    RETVAL=0

    start() {
    echo -n $"Starting $prog: "
    LANG=$HTTPD_LANG daemon --pidfile=${pidfile} $httpd $OPTIONS
    RETVAL=$?
    echo
    [ $RETVAL = 0 ] && touch ${lockfile}
    return $RETVAL
    }

    stop() {
    echo -n $"Stopping $prog: "
    killproc -p ${pidfile} -d 10 $httpd
    RETVAL=$?
    echo
    [ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile}
    }
    reload() {
    echo -n $"Reloading $prog: "
    if ! LANG=$HTTPD_LANG $httpd $OPTIONS -t >&/dev/null; then
    RETVAL=$?
    echo $"not reloading due to configuration syntax error"
    failure $"not reloading $httpd due to configuration syntax error"
    else
    killproc -p ${pidfile} $httpd -HUP
    RETVAL=$?
    fi
    echo
    }

    # See how we were called.
    case "$1" in
    start)
    start
    ;;
    stop)
    stop
    ;;
    status)
    status -p ${pidfile} $httpd
    RETVAL=$?
    ;;
    restart)
    stop
    start
    ;;
    condrestart)
    if [ -f ${pidfile} ] ; then
    stop
    start
    fi
    ;;
    reload)
    reload
    ;;
    graceful|help|configtest|fullstatus)
    $apachectl $@
    RETVAL=$?
    ;;
    *)
    echo $"Usage: $prog {start|stop|restart|condrestart|reload|status|fullstatus|graceful|help|configtest}"
    exit 1
    esac

    exit $RETVAL

    而后为此脚本赋予执行权限:
    # chmod +x /etc/rc.d/init.d/httpd

    加入服务列表:
    # chkconfig --add httpd

  • 相关阅读:
    自己动手丰衣足食之轮播图一动态修改marginTop属性实现轮播图
    自己动手丰衣足食之 jQuery 数量加减插件
    Asp.net 中,在服务端向客户端写脚本的常用方法
    Asp.Net使用加密cookie代替session验证用户登录状态 源码分享
    Javascript技术之详尽解析event对象
    Javascript的V8引擎研究
    11个实用的CSS学习工具[转载收藏]
    为什么JavaScript声明变量的时候鼓励加var关键字
    asp.net菜鸟到中级程序员的飞跃 --30本好书点评
    创建安全的ashx文件,ashx编译
  • 原文地址:https://www.cnblogs.com/yangxiaolan/p/4990039.html
Copyright © 2011-2022 走看看