Apache

来自站长百科
Liang3391讨论 | 贡献2009年12月23日 (三) 10:09的版本 →‎参考资料
跳转至: 导航、​ 搜索

Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上。

Apache源于NCSAhttpd服务器,经过多次修改,成为世界上最流行的Web服务器软件之一。Apache取自“a patchy server”的读音,意思是充满补丁的服务器,因为它是自由软件,所以不断有人来为它开发新的功能、新的特性、修改原来的缺陷。Apache的特点是简单、速度快、性能稳定,并可做代理服务器来使用。

本来它只用于小型或试验Internet网络,后来逐步扩充到各种Unix系统中,尤其对Linux的支持相当完美。Apache有多种产品,可以支持SSL技术,支持多个虚拟主机。 Apache是以进程为基础的结构,进程要比线程消耗更多的系统开支,不太适合于多处理器环境,因此,在一个Apache Web站点扩容时,通常是增加服务器或扩充群集节点而不是增加处理器。到目前为止Apache仍然是世界上用的最多的Web服务器,市场占有率达60%左右。世界上很多著名的网站如Amazon.comYahoo!、W3 Consortium、Financial Times等都是Apache的产物,它的成功之处主要在于它的源代码开放、有一支开放的开发队伍、支持跨平台的应用(可以运行在几乎所有的Unix、 Windows、Linux系统平台上)以及它的可移植性等方面。

Apache特点

支持最新的HTTP/1.1通信协议

拥有简单而强有力的基于文件的配置过程

支持通用网关接口

支持基于IP和基于域名的虚拟主机

支持多种方式的HTTP认证

集成Perl处理模块

集成代理服务器模块

支持实时监视服务器状态和定制服务器日志

支持服务器端包含指令(SSI)

支持安全Socket层(SSL)

提供用户会话过程的跟踪

支持FastCGI

通过第三方模块可以支持Java Servlets

Apache安装

Apache的编译与安装

Apache的停止与重新启动

Apache的多路处理模块

在Windows下安装Apache测试环境比较方便的方法是使用Apache套件,常用的有:

WampServer PHPnow

用户指南

如何.../指南

认证、授权、访问控制

CGI动态网页

用户网站目录的管理(public_html)

模块


其他

Apache日常维护

参考资料

编译LAMP环境配置过程: 这是shell自动化安装脚本,先准备好软件包在当面目录下执行,mysql采用的是二进制源码包。

  1. !/bin/bash

_APACHEPATH=/usr/local/apache _MYSQLPATH=/usr/local _PHPPATH=/usr/local/php path=`pwd` cd $path

sleep 3 echo "##########---------- Mysql install-----------#############"

       echo "Installing Mysql,Please waiting..."
       cp my.cnf /etc/
       tar zxvf mysql-5.1.32-linux-i686-icc-glibc23.tar.gz -C $_MYSQLPATH
       cd $_MYSQLPATH
       mv mysql-5.1.32-linux-i686-icc-glibc23 mysql
       cd mysql
       groupadd mysql
       useradd -g mysql mysql
       chown -R mysql .
       chgrp -R mysql .
       scripts/mysql_install_db --user=mysql
       chown -R root .
       chown -R mysql:mysql data
       #$_MYSQLPATH/mysql/bin/mysqld_safe --user=mysql &
       echo "$_MYSQLPATH/bin/mysqld_safe --user=mysql &" >> /etc/rc.d/rc.local
       echo "Mysql Install Done."
       cd $path

sleep 3 echo "##########---------- Apache install-----------#############"

       echo "Installing Apache,Please waiting..."
       tar jxvf httpd-2.2.9.tar.bz2
       cd httpd-2.2.9
       ./configure --prefix=$_APACHEPATH --enable-so --enable-mods-shared=most
       make
       make install
       echo "$_APACHEPATH/bin/apachectl start" >> /etc/rc.d/rc.local
       echo "Apache Install Done."
       cd $path
       if [ -d /usr/local/apache/ ]
       then
       $_APACHEPATH/bin/apxs -c -i -a $path/httpd-2.2.9/modules/mappers/mod_rewrite.c
       echo "###----Rewrite.so Install Done.----###"
       else
       exit
       fi

sleep 3 echo "##########---------- PHP_extension install-----------#############"

       echo "Installing libxml,Please waiting..."
       tar zxvf libxml2-2.6.30.tar.gz
       cd libxml2-2.6.30
       ./configure --prefix=/usr/local/libxml
       make
       make install
       echo "libxml Install Done."
       cd $path
       echo "Installing libiconv,Please waiting..."
       tar zxvf libiconv-1.12.tar.gz
       cd libiconv-1.12
       ./configure --prefix=/usr/local/libiconv
       make
       make install
       echo "libiconv Install Done."
       cd $path
       echo "Installing zlib,Please waiting..."
       tar zxvf zlib-1.2.3.tar.gz
       cd zlib-1.2.3
       ./configure --prefix=/usr/local/zlib
       make
       make install
       echo "zlib Install Done."
       cd $path
       echo "Installing Freetype,Please waiting..."
       tar zxvf freetype-2.2.1.tar.gz
       cd freetype-2.2.1
       ./configure --disable-shared
       make
       make install
       echo "Freetype Install Done."
       cd $path
       echo "Install Jpeg,Please waiting..."
       tar zxvf jpegsrc.v6b.tar.gz
       cd jpeg-6b
       ./configure --enable-shared --enable-static
       make
       mkdir -p /usr/local/man/man1
       make install
       make install-lib
       echo "Jpeg Install Done."
       cd $path
       echo "Install libpng,Please waiting..."
       tar zxvf libpng-1.2.10.tar.gz
       cd libpng-1.2.10
       ./configure --disable-shared
       make
       make install
       echo "libpng Install Done."
       cd $path
       echo "Install Gd,Please waiting..."
       tar zxvf gd-2.0.35.tar.gz 
       cd gd-2.0.35
       ./configure --with-freetype --with-jpeg --with-png
       make
       make install
       echo "Gd Install Done."
       echo "PHP_extension Install Done."
       cd $path

sleep 3 echo "##########---------- PHP_extension install-----------#############"

       echo "Installing PHP,Please waiting..."
       tar jxvf php-5.2.6.tar.bz2
       cd php-5.2.6
       \cp $_APACHEPATH/build/libtool .
       ./configure --prefix=$_PHPPATH --with-apxs2=/usr/local/apache/bin/apxs \
                   --with-mysql=/usr/local/mysql --with-libxml-dir=/usr/local/libxml \
                   --with-iconv=/usr/local/libiconv --with-config-file-path=/usr/local/php/etc \ 
                   --with-gd --with-freetype-dir --with-jpeg-dir --with-png-dir \
                   --with-zlib=/usr/local/zlib --enable-mbstring  --enable-sockets
       make 
       make install
       cd ../
       cp php.ini $_PHPPATH/etc/
       \cp httpd.conf $_APACHEPATH/conf/
       $_APACHEPATH/bin/apachectl start
       echo "PHP Install Done."
       $_MYSQLPATH/mysql/bin/mysqld_safe --user=mysql &

echo "###########----------------Finish-----------------############"

更多...

外部链接

相关条目