青蛙学Linux—Apache基础

Apache通常指Apache HTTP Server,它是世界上使用量排名第一的Web服务器软件,是最流行的Web服务器之一。Apache HTTP Server的官网为http://httpd.apache.org/

1、安装Apache

Apache可以通过YUM安装,也可以在官网上下载源码包自行编译安装。这里使用的是官网上下载的最新版本Apache 2.4.37的源码包进行编译安装。

1.1、安装APR

Apache 2.4.x版本有一个重要的软件依赖,就是APR。APR是Apache portable Run-time libraries(Apache可移植库)的缩写,主要为上层应用程序提供一个跨平台的底层支持接口库。APR可以从http://apr.apache.org/下载,APR包含APR、APR-util和APR-iconv三个软件包,Apache依赖ARP和APR-util。

这里下载的APR版本为1.6.5,APR-util版本为1.6.1;APR安装到/usr/local/apr目录,APR-util安装到/usr/local/apr-util目录。

安装APR

将下载的tar.gz包解压后,进入源码目录,运行:

[root@localhost apr-1.6.5]# ./configure --prefix=/usr/local/apr

在configure执行完毕无报错后,运行:

[root@localhost apr-1.6.5]# make && make install

命令执行完毕无报错,就说明APR安装成功。

安装APR-util

将下载的tar.gz包解压后,进入源码目录,运行:

[root@localhost apr-util-1.6.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr

在configure执行完毕无报错后,运行:

[root@localhost apr-util-1.6.1]# make && make install

在执行这条命令时出现了以下错误:

xml/apr_xml.c:35:19: 致命错误:expat.h:没有那个文件或目录

出现这种错误一般是由于对应软件的开发包没有安装,所以这边安装下expat的开发包:

[root@localhost apr-util-1.6.1]# yum install expat-devel

安装依赖包后执行:

[root@localhost apr-util-1.6.1]# make clean

然后再次进行make操作:

[root@localhost apr-util-1.6.1]# make && make install

这次就没有报错了,APR-util安装成功。

1.2、安装其他依赖

这里通过YUM来安装Apache需要的其他依赖软件,运行:

[root@localhost apps]# yum install pcre pcre-devel zlib zlib-devel gcc-c++ bison-devel  ncurses-devel  libtool  bison perl perl-devel openssl openssl-devel

1.3、安装Apache

将官网上下载的tar.gz包解压后,进入源码路径。

Apache在编译安装的过程中需要使用到APR和APR-util的源码,所以这里必须先把APR和APR-util的源码复制到指定的目录中:

[root@localhost httpd-2.4.37]# cp -r ../apr-1.6.5 srclib/apr
[root@localhost httpd-2.4.37]# cp -r ../apr-util-1.6.1 srclib/apr-util

接下来开始进行configure,运行:

[root@localhost httpd-2.4.37]# ./configure 
> --prefix=/usr/local/httpd 
> --with-apr=/usr/local/apr             # 指定APR安装路径
> --with-apr-util=/usr/local/apr-util   # 指定APR-util安装路径
> --enable-so                           # 加载DSO模块
> --enable-modules=most                 # 动态加载常用模块
> --enable-mods-share=all               # 动态编译所有模块
> --enable-rewrite=shared                # 将rewrie模块编译成动态模块

在configure执行完毕无报错后,运行:

[root@localhost httpd-2.4.37]# make && make install

命令运行完成无报错,说明Apache安装成功。

2、Apache目录结构及重要文件

Apache安装完成后,在其安装目录下有以下几个子目录:

bin      # 二进制程序及服务程序目录
build
cgi-bin  # 默认的CGI目录  
conf     # 主配置文件目录
error    # 默认的错误应答文件目录
htdocs   # 默认Web应用根目录
icons    # Apache图标文件目录
include  # 头文件目录
logs     # 日志文件目录
man      # man帮助文件目录
manual   # 使用文档目录
modules  # 动态加载模块目录

Apache的一些重要文件:

bin目录

ab          # 压力测试工具
apachectl   # Apache启动|关闭|重启动脚本
httpd       # Apache控制命令程序,在Apache启动后实际运行的进程即为httpd

conf目录

extra       # 子目录,除主配置文件外的其他配置文件,在主配置文件中通过Include引用
httpd.conf  # Apache的主配置文件
original    # 配置文件的备份目录

logs目录

access_log  # 访问日志
error_log   # 错误日志

3、启动|关闭|重启动Apache

Apache的启动|关闭|重启动通过其安装目录下的bin目录的apachectl脚本进行,通过以下命令启动|关闭|重启动Apache:

./apachectl start|stop|restart

在没有对Apache进行配置时,启动Apache后默认访问的是位于Apache安装目录下的htdocs目录中的index.html:

1

看到以上页面,表示Apache已经成功启动,正在提供HTTP服务。

原文地址:https://www.cnblogs.com/yu2006070-01/p/10239710.html