LAMP架构应用实战—Apache服务介绍与安装02

时间:2022-06-22 12:49:22

LAMP架构应用实战—Apache服务介绍与安装02


以下内容接上节文章

解决方案安装GCC套件

[root@Centos ~]# yum install gcc -y

Loadedplugins: fastestmirror, refresh-packagekit, security

Loadingmirror speeds from cached hostfile

 *base: mirrors.163.com

 *extras: mirrors.163.com

 *updates: mirrors.163.com

base                     |3.7kB        00:00     

extras                   | 3.4 kB      00:00     

updates                | 3.4 kB      00:00     

Setting up Install Process

Resolving  Dependencies

-->Running transaction check

--->Package gcc.x86_64 0:4.4.7-17.el6 will be installed

-->Processing Dependency: libgomp = 4.4.7-17.el6 for package:gcc-4.4.7-17.el6.x86_64

-->Processing Dependency: cpp = 4.4.7-17.el6 for package: gcc-4.4.7-17.el6.x86_64

-->Processing Dependency: libgcc >= 4.4.7-17.el6 for package:gcc-4.4.7-17.el6.x86_64

-->Processing Dependency: cloog-ppl >= 0.15 for package:gcc-4.4.7-17.el6.x86_64

-->Running transaction check

--->Package cloog-ppl.x86_64 0:0.15.7-1.2.el6 will be installed

-->Processing Dependency: libppl_c.so.2()(64bit) for package:cloog-ppl-0.15.7-1.2.el6.x86_64

-->Processing Dependency: libppl.so.7()(64bit) for package:cloog-ppl-0.15.7-1.2.el6.x86_64

--->Package cpp.x86_64 0:4.4.7-17.el6 will be installed

-->Processing Dependency: libmpfr.so.1()(64bit) for package:cpp-4.4.7-17.el6.x86_64

--->Package libgcc.x86_64 0:4.4.7-4.el6 will be updated

--->Package libgcc.x86_64 0:4.4.7-17.el6 will be an update

--->Package libgomp.x86_64 0:4.4.7-4.el6 will be updated

--->Package libgomp.x86_64 0:4.4.7-17.el6 will be an update

-->Running transaction check

--->Package mpfr.x86_64 0:2.4.1-6.el6 will be installed

--->Package ppl.x86_64 0:0.10.2-11.el6 will be installed

-->Finished Dependency Resolution

Dependencies Resolved

===========================================================

 Package      Arch            Version             Repository      Size

===========================================================

Installing:

 gcc         x86_64          4.4.7-17.el6          base        10 M                

Installingfor dependencies:

 cloog-ppl   x86_64       0.15.7-1.2.el6     base          93 k

 cpp             x86_64     4.4.7-17.el6        base         3.7 M

 mpfr           x86_64        2.4.1-6.el6       base         157 k

 ppl           x86_64          0.10.2-11.el6    base         1.3 M

Updating  for dependencies:

 libgcc       x86_64          4.4.7-17.el6         base        103 k  

 libgomp    x86_64          4.4.7-17.el6         base        134 k

 Transaction  Summary

===========================================================

Install   5 Package(s)

Upgrade 2 Package(s)

 Total

download size: 16 M

Downloading   Packages:

(1/7):cloog-ppl-0.15.7-1.2.el6.x86_64.rpm           |  93kB     00:00     

(2/7):cpp-4.4.7-17.el6.x86_64.rpm              | 3.7 MB     00:02     

(3/7):gcc-4.4.7-17.el6.x86_64.rpm               |  10 MB     00:08     

(4/7):libgcc-4.4.7-17.el6.x86_64.rpm            |103 kB     00:00     

(5/7):libgomp-4.4.7-17.el6.x86_64.rpm             |134 kB     00:00     

(6/7):mpfr-2.4.1-6.el6.x86_64.rpm               | 157 kB     00:00     

(7/7):ppl-0.10.2-11.el6.x86_64.rpm              | 1.3 MB     00:00     

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

Total                                                             1.2 MB/s |  16 MB     00:13    

Running  rpm_check_debug

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Warning:RPMDB altered outside of yum.

** Found 1pre-existing rpmdb problem(s), 'yum check' output follows:

gnome-user-share-2.28.2-3.el6.x86_64has missing requires of httpd >= ('0', '2.2.0', None)

 Updating   : libgcc-4.4.7-17.el6.x86_64          1/9 

Installing : ppl-0.10.2-11.el6.x86_64              2/9 

Installing : cloog-ppl-0.15.7-1.2.el6.x86_64      3/9 

Updating   : libgomp-4.4.7-17.el6.x86_64         4/9 

Installing : mpfr-2.4.1-6.el6.x86_64             5/9 

Installing : cpp-4.4.7-17.el6.x86_64             6/9 

Installing : gcc-4.4.7-17.el6.x86_64            7/9 

Cleanup    : libgomp-4.4.7-4.el6.x86_64        8/9 

Cleanup    : libgcc-4.4.7-4.el6.x86_64         9/9 

Verifying  : libgcc-4.4.7-17.el6.x86_64          1/9 

Verifying  : ppl-0.10.2-11.el6.x86_64           2/9 

Verifying  : mpfr-2.4.1-6.el6.x86_64          3/9 

Verifying  : gcc-4.4.7-17.el6.x86_64           4/9 

Verifying  : libgomp-4.4.7-17.el6.x86_64        5/9 

Verifying  : cpp-4.4.7-17.el6.x86_64          6/9 

Verifying  : cloog-ppl-0.15.7-1.2.el6.x86_64        7/9 

Verifying  : libgomp-4.4.7-4.el6.x86_64            8/9 

Verifying  : libgcc-4.4.7-4.el6.x86_64          9/9 

Installed:

gcc.x86_64            0:4.4.7-17.el6

Dependency   Installed:

cloog-ppl.x86_64   0:0.15.7-1.2.el6     cpp.x86_64    0:4.4.7-17.el6      

mpfr.x86_64  0:2.4.1-6.el6                  ppl.x86_64   0:0.10.2-11.el6   

Dependency  Updated:

libgcc.x86_64     0:4.4.7-17.el6          libgomp.x86_64  0:4.4.7-17.el6 

Complete!


再次切换到APR目录下执行安装

[root@Centos~]# cd /Downloads/tools/apr-1.5.2

[root@Centosapr-1.5.2]# ./configrue --prefix=/var/local/apr

[root@Centosapr-1.5.2]# make && make install

检查下是否安装成功

[root@Centosapr-1.5.2]# rpm -qa|grep apr

apr-1.3.9-5.el6_2.x86_64

apr-util-1.3.9-3.el6_0.1.x86_64

apr-util-ldap-1.3.9-3.el6_0.1.x86_64

下载apr-util软件

[root@Centostools]# wgethttps://mirrors.tuna.tsinghua.edu.cn/apache/apr/apr-util-1.5.4.tar.gz

--2016-09-1201:40:11-- https://mirrors.tuna.tsinghua.edu.cn/apache/apr/apr-util-1.5.4.tar.gz

Resolvingmirrors.tuna.tsinghua.edu.cn... 166.111.206.63, 2402:f000:1:416:166:111:206:63

Connectingto mirrors.tuna.tsinghua.edu.cn|166.111.206.63|:443... connected.

HTTPrequest sent, awaiting response... 200 OK

Length:874044 (854K) [application/octet-stream]

Saving to:“apr-util-1.5.4.tar.gz”

100%[====================================================================================================================================>]874,044      904K/s   in 0.9s   

2016-09-1201:40:12 (904 KB/s) - “apr-util-1.5.4.tar.gz” saved [874044/874044]

 

[root@Centosapr-util-1.5.4]# ./configure --prefix=/usr/local/web/apr-util–with-apr=/usr/local/apr

[root@Centosapr-util-1.5.4]#make && make install

............................................................................................................................过程省略

 

重新切换到apache目录下执行前面的编译安装apache

[root@Centoshttpd-2.4.23]# ./configure

--prefix=/application/apache2.4.23\

--enable-deflate\

--enable-expires\

--enable-headers\

--enable-modules=most\

--enable-so\

--with-mpm=worker\

--enable-rewrite\

--with-apr=/usr/local/apr\

--with-apr-util=/usr/local/web/apr-util

checkingfor chosen layout... Apache

checkingfor working mkdir -p... yes

checkingfor grep that handles long lines and -e... /bin/grep

checkingfor egrep... /bin/grep -E

checkingbuild system type... x86_64-unknown-linux-gnu

checkinghost system type... x86_64-unknown-linux-gnu

checkingtarget system type... x86_64-unknown-linux-gnu

configure:

configure:Configuring Apache Portable Runtime library...

configure:

checkingfor APR... yes

  setting CC to "gcc"

  setting CPP to "gcc -E"

  setting CFLAGS to " -g -O2-pthread"

  setting CPPFLAGS to " -DLINUX-D_REENTRANT -D_GNU_SOURCE"

  setting LDFLAGS to " "

configure:

configure:Configuring Apache Portable Runtime Utility library...

configure:

checkingfor APR-util... yes

checkingfor gcc... gcc

checkingwhether the C compiler works... yes

checkingfor C compiler default output file name... a.out

checkingfor suffix of executables...

checkingwhether we are cross compiling... no

checking forsuffix of object files... o

checkingwhether we are using the GNU C compiler... yes

checkingwhether gcc accepts -g... yes

checkingfor gcc option to accept ISO C89... none needed

checkinghow to run the C preprocessor... gcc -E

checkingfor gcc option to accept ISO C99... -std=gnu99

checkingfor pcre-config... false

configure: error: pcre-config for libpcre not found. PCRE isrequired and available from http://pcre.org/

 

根据提示解决方法如下

下载pcre软件交并安装

[root@Centostools]# wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.tar.gz

--2016-09-1203:18:42-- ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.tar.gz

           => “pcre-8.38.tar.gz”

Resolvingftp.csx.cam.ac.uk... 131.111.8.115

Connectingto ftp.csx.cam.ac.uk|131.111.8.115|:21... connected.

Logging inas anonymous ... Logged in!

==> SYST... done.    ==> PWD ... done.

==> TYPEI ... done.  ==> CWD (1)/pub/software/programming/pcre ... done.

==> SIZEpcre-8.38.tar.gz ... 2053336

==> PASV... done.    ==> RETR pcre-8.38.tar.gz... done.

Length:2053336 (2.0M) (unauthoritative)

 

100%[============================================================================================================================>]2,053,336    544K/s   in 3.7s   

 

2016-09-1203:18:54 (544 KB/s) - “pcre-8.38.tar.gz” saved [2053336]

 

[root@Centostools]# ls -ll

total 12096

drwxr-xr-x.28 1000  1000    4096 Sep 12 01:29 apr-1.5.2

-rw-r--r--.  1 root root 1031613 Apr 29  2015apr-1.5.2.tar.gz

drwxr-xr-x.20 1000  1000    4096 Sep 12 01:44 apr-util-1.5.4

-rw-r--r--.  1 root root  874044 Sep 20  2014apr-util-1.5.4.tar.gz

drwxr-xr-x.11 yumw games    4096 Sep 12 03:04httpd-2.4.23

-rw-r--r--.  1 root root 8406575 Jul  5 03:50httpd-2.4.23.tar.gz

-rw-r--r--.  1 root root 2053336 Sep 12 03:18 pcre-8.38.tar.gz

解压并进行编译安装

[root@Centostools]# tar zxf pcre-8.38.tar.gz

[root@Centostools]# cd pcre-8.38

[root@Centospcre-8.38]# ./configure --prefix=/usr/local/pcre

[root@Centospcre-8.38]# make && make install

............................................................................................................................过程省略

 

重新切换到apache目录下执行前面的编译安装apache

[root@Centoshttpd-2.4.23]# ./configure

--prefix=/application/apache2.4.23\

--enable-deflate\

--enable-expires\

--enable-headers\

--enable-modules=most\

--enable-so\

--with-mpm=worker\

--enable-rewrite\

--with-apr=/usr/local/apr\

--with-apr-util=/usr/local/web/apr-util

--with-pcre=/usr/local/pcre/bin/pcre-config

............................................................................................................................过程省略

 

[root@Centoshttpd-2.4.23]#make && make install

............................................................................................................................过程省略

过程省略,注意查看是否有错误提示,否则到最后也无法安装成功

 

[root@Centoshttpd-2.4.23]# ln -s /application/apache2.4.23 /application/apache

便于后续使用,生产环境中常用这种配置

安装时指定版本号路径方便查看安装版本与后续升级,如果后续升级,只需将前面的软链接删除,重新创建一个新软链接即可

[root@Centoshttpd-2.4.23]# ls -l /application/

total 4

lrwxrwxrwx.  1 root root  25 Sep 12 03:44 apache -> /application/apache2.4.23

drwxr-xr-x.14 root root 4096 Sep 12 03:30 apache2.4.23

 

启动服务

[root@Centoshttpd-2.4.23]# cd ..

[root@Centostools]# /application/apache/bin/apachectl start

AH00557:httpd: apr_sockaddr_info_get() failed for Centos

AH00558:httpd: Could not reliably determine the server's fully qualified domain name,using 127.0.0.1. Set the 'ServerName' directive globally to suppress thismessage

httpd (pid34190) already running

 

服务启动成功,但由于没有DNS出现这种提示,解决方法如下(测试环境,实际生产环境中不存在这提示信息)

[root@Centos~]#  vi/application/apache/conf/httpd.conf

#

# This isthe main Apache HTTP server configuration file. It contains the

#configuration directives that give the server its instructions.

# See<URL:http://httpd.apache.org/docs/2.4/> for detailed information.

............................................................................中间内容省略

# If yourhost doesn't have a registered DNS name, enter its IP address here.

ServerName www.example.com:80==========>localhost:80(192.168.1.2:80)

 

查看端口

[root@Centostools]# lsof -i tcp:80

COMMAND   PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME

httpd   34190  root    4u  IPv6 46376      0t0  TCP *:http (LISTEN)

httpd   34191 daemon    4u IPv6  46376      0t0 TCP *:http (LISTEN)

httpd   34192 daemon    4u IPv6  46376      0t0 TCP *:http (LISTEN)

httpd   34193 daemon    4u IPv6  46376      0t0 TCP *:http (LISTEN)

 

查看进程

[root@Centostools]# ps -ef |grep httpd

root      34190     1  0 03:57 ?       00:00:00/application/apache2.4.23/bin/httpd -k start

daemon    34191 34190  0 03:57 ?     00:00:00/application/apache2.4.23/bin/httpd -k start

daemon    34192 34190  0 03:57 ?     00:00:00/application/apache2.4.23/bin/httpd -k start

daemon    34193 34190  0 03:57 ?     00:00:00/application/apache2.4.23/bin/httpd -k start

root      34320  1866  0 04:06 pts/0    00:00:00 grep httpd

 

关闭防火墙

[root@Centostools]# /etc/init.d/iptables stop

iptables:Setting chains to policy ACCEPT: filter       [ OK  ]

iptables:Flushing firewall rules:                     [  OK  ]

iptables:Unloading modules:                       [  OK  ]

[root@Centostools]# /etc/init.d/iptables status

iptables:Firewall is not running.

 

如果是生产环境,可以添加规则允许80端口即可

[root@Centostools]#iptables -I INPUT -p tcp --dport 80 -jACCEPT

 

[root@Centostools]# vi /etc/selinux/config

# This filecontrols the state of SELinux on the system.

# SELINUX=can take one of these three values:

#     enforcing - SELinux security policy isenforced.

#     permissive - SELinux prints warningsinstead of enforcing.

#     disabled - No SELinux policy is loaded.

SELINUX=disalbed

#SELINUXTYPE= can take one of these two values:

#     targeted - Targeted processes areprotected,

#     mls - Multi Level Security protection.

SELINUXTYPE=targeted

 

打开IE浏览器直接输入http://192.168.1.2打开出现  it works表示安装成功

[root@Centos~]# cd /application/apache/conf/

[root@Centosconf]# ls

extra  httpd.conf index.html  magic  mime.types original

[root@Centosconf]# cat index.html

<html><body><h1>Itworks!</h1></body></html>

浏览器出现的内容就是读取这个文件的内容

至此,Apache服务安装配置完成,可以正常提供 http服务了


更多内容请访问民工哥个人微信公众号

LAMP架构应用实战—Apache服务介绍与安装02