linux Apache 的安装

rpm –qa httpd 查询是否安装了 Apache

 

 

rpm –e 包名卸载安装程序

 

 

rpm –e --nodeps 包名卸载安装程序不产生依赖

 

 

#检查是否安装有依赖库

 

 

yum install –y gcc glibc glibc-common gd gd-devel xinetd openssl-devel

 

 

zlibzlib-devel ncurses-devel gcc-c++ wget tree vim lsof apr*

 

 

[root@Liangenyu tools]# wget

 

 

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

 

 

#查看下载的包大小

 

 

[root@Liangenyu tools]# ls httpd-2.2.27.tar.gz -hs

 

 

7.2M httpd-2.2.27.tar.gz

 

 

#解压安装包

 

 

[root@Liangenyu tools]# tar zxvf httpd-2.2.27.tar.gz

 

 

#切换到 httpd 目录

 

[root@Liangenyu tools]# cd httpd-2.2.27

 

#ls 查看下有没有 INSTALL   README [root@Liangenyuhttpd-2.2.27]# ls

ABOUT_APACHE    CHANGES              httpd.dsp            libhttpd.dep    NOTICE

 

server

 

acinclude.m4config.layout  httpd.mak          libhttpd.dsp    NWGNUmakefilesrclib

 

Apache.dsw       configure          httpd.speclibhttpd.mak    os                           support                   64

 

build               configure.in     include                LICENSE            README                   test BuildAll.dsp   docs INSTALL                Makefile.in     README.platforms   VERSIONING BuildBin.dsp   emacs-style    InstallBin.dsp  Makefile.win   README-win32.txt buildconfhttpd.dep          LAYOUT                 modules            ROADMAP

#因为安装步骤可以参考 INSTALL

 

[root@Liangenyuhttpd-2.2.27]# cat INSTALL

 

 

APACHE INSTALLATION OVERVIEW

 

 

Quick Start - Unix

 

 

------------------

 

 

For complete installation documentation, see [ht]docs/manual/install.html or

 

 

http://httpd.apache.org/docs/2.2/install.html

 

 

$ ./configure --prefix=PREFIX

 

 

$ make

 

 

$ make install

 

 

$ PREFIX/bin/apachectl start

 

……………………………………………….

 

#常用的配置参数:

 

 

--prefix 默认安装在/usr/local/apache 目录下,改参数用于自定义 Apache 的安装目录!

 

 

例如:./configure –prefix=/usr/local/apache

 

 

--enabled-moudles 用于指定除默认模块以外需要额外安装的 Apache 模块,不同模块之间用空

 

格分隔

 

--enabled-mods-shared 跟—enabled-moudles 相同,用于指定需要额外安装的模块在 Apache

 

运行的时候会自动载入

 

#编译参数

 

[root@Liangenyuhttpd-2.2.27]# ./configure \

 

> --prefix=/application/apache2.2.27 \#安装的目录

 

 

大提高传输速度,提示访问者访问体验,在生产环境中,这是 apache 调优的重要选项之一

 

> --enable-expires \            #激活允许通过配置文件控制 http 的“expires”和“cache-control” 头内容,即对网站图片,js,css 等内容,提供在客户端浏览器缓存的设置,这是 apache 调优的重 要选项之一

> --enable-headers \            #提供允许 http 请求头的控制

 

> --enable-moudles=most \    #激活多数模块

 

 

> --enable-so \                    #激活 apache 服务的 DSO 支持,即在以后可以以 DSO 的方式编译

 

 

安装共享模块,这个模块本身不能以 DSO 方式编译

 

 

> --with-mpm=worker \         #选择 apache mpm 的模式为 worker 模式,因为 worker 模式原

 

 

理是更多的使用线程来处理请求,所以可以处理更多的并发请求,而系统资源的开销小于基于进程

 

 

的 MPM prefork,如果不指定此参数,默认得到模式是 prefork 进程模式。这是 apache 调优的一

 

 

个重要选项之一。

 

 

> --enable-rewrite                #提供基于 URL 规则的重写功能,根据已知 URL 地址,转换其他想

 

 

要的 url 地址,如伪静态功能就是这个模块实现的,这是 apache 在生产环节中必用的一个重要功能

 

 

可以使用./configure –help 命令来查看以上各个参数的用途

 

 

在安装 apache 软件包时,忘记安装以上模块,可以使用 dso 方式编译安装

 

 

检查编译结果:

 

 

检查是否有 error:

 

 

Echo $?

 

 

[root@Liangenyuhttpd-2.2.27]# echo $?

 

0

 

安装出现的错误:

 

checkingfor zlib location ..not found error:mod_deflate has been……. 解决方法:

yuminstall zlibzlib-devel –y

 

 

…………编译中…………………………..

 

make[1]: Leaving directory `/home/oldboy/tools/httpd-2.2.27' --à注意:此非错误信息 [root@Liangenyuhttpd-2.2.27]# make install

#最后创建软连接 apache

 

[root@Liangenyuhttpd-2.2.27]# ln -s /application/apache2.2.27/ /application/apache

 

#用软连接查看 apache 目录下的文件

 

 

[root@Liangenyuhttpd-2.2.27]# ll /application/apache

 

 

lrwxrwxrwx. 1 root root 26 12 月   4 22:08 /application/apache ->

 

 

/application/apache2.2.27/

 

 

[root@Liangenyuhttpd-2.2.27]# ls /application/apache/

 

 

总用量 60

 

 

drwxr-xr-x.   2 root root   4096 12 月 4 22:06 bin

 

 

drwxr-xr-x.   2 root root   4096 12 月 4 22:06 build

 

 

drwxr-xr-x.   2 root root   4096 12 月 4 22:06 cgi-bin

 

 

drwxr-xr-x.   4 root root   4096 12 月 4 22:06 conf

 

 

drwxr-xr-x.   3 root root   4096 12 月 4 22:06 error

 

 

drwxr-xr-x.   2 root root   4096 12 月 4 22:06 htdocs

 

 

drwxr-xr-x.   3 root root   4096 12 月 4 22:06 icons

 

 

drwxr-xr-x.   2 root root   4096 12 月 4 22:06 include

 

 

drwxr-xr-x.   3 root root   4096 12 月 4 22:06 lib

 

drwxr-xr-x.

2 root root

4096 12

4 22:06 logs

drwxr-xr-x.

4 root root

4096 12

4 22:06 man

drwxr-xr-x. 14 root root 12288 12 月  4 22:06 manual

drwxr-xr-x.    2 root root   4096 12 月  4 22:06 modules

 

# -t 参数是检查语法的意思

 

[root@Liangenyuhttpd-2.2.27]# /application/apache/bin/apachectl -t

 

Syntax OK#语法 ok

 

#启动 Apache 服务

 

 

#查看端口是否启用

 

[root@Liangenyuhttpd-2.2.27]# lsof -i :80

COMMAND    PID     USER     FD    TYPE DEVICE SIZE/OFF NODE NAME httpd     5437     root       4uIPv6    64183          0t0    TCP *:http (LISTEN) httpd              5440 daemon       4uIPv6    64183           0t0   TCP *:http (LISTEN) httpd     5441 daemon       4uIPv6    64183           0t0   TCP *:http (LISTEN)

 

 

httpd     5442 daemon       4uIPv6    64183           0t0   TCP *:http (LISTEN)

 

 

#测试 apache 是否安装成功的 2 个方法:

 

 

1.浏览器中输入服务器 IP 地址,出现以下图示,证明安装 apache 成功了!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.

 

[root@Liangenyuhttpd-2.2.27]# wget 192.168.1.33

 

 

--2014-12-04 22:19:50--    http://192.168.1.33/

 

 

正在连接 192.168.1.33:80... 已连接。

 

 

已发出 HTTP 请求,正在等待回应... 200 OK

 

 

长度:44 [text/html]

 

 

正在保存至: “index.html”

 

100%[=================================================>] 44

 

--.-K/s     in 0s

 

2014-12-04 22:19:50 (9.74 MB/s) - 已保存“index.html” [44/44])

 

#如果不能够正常访问,请检查 iptables,selinux 是否已经正常关闭!

posted @ 2019-08-09 15:56  樊伟胜  阅读(224)  评论(0编辑  收藏  举报