如何在Linux上安装WEB服务器Apache2 ?

注意点

       安装时后报错很多,原因时apache时开发很早的版本,同时时开源的,不断被补充完善,报的错就是依赖包

tomcat和apache的区别:

  1. Apache是web服务器(静态解析,如HTML),tomcat是java应用服务器(动态解析,如JSP、PHP);

  2. Tomcat只是一个servlet(jsp也翻译成servlet)容器,可以认为是apache的扩展,但是可以独立于apache运行;

  3. Apache是有C语言实现的,支持各种特性和模块从而来扩展核心功能;Tomcat是Java编写的,更好的支持Servlet和JSP;

  4. Apache是普通服务器,本身只支持html静态普通网页。不过可以通过插件支持PHP,还可以与Tomcat连通(单向Apache连接Tomcat,就是说通过Apache可以访问Tomcat资源,反之不然),Tomcat是jsp/servlet容器,同时也支持HTML、JSP、ASP、PHP、CGI等,其中CGI需要一些手动调试,不过很容易的;

  5. Apache侧重于http server,Tomcat侧重于servlet引擎,如果以standalone方式运行,功能上Tomcat与apache等效支持JSP,但对静态网页不太理想;

  6. Apache可以运行一年不重启,稳定性非常好,而Tomcat则不见得;

  7. 首选web服务器是Apache,但Apache解析不了的jsp、servlet才用tomcat;

  8. Apache是很最开始的页面解析服务,tomcat是后研发出来的,从本质上来说tomcat的功能完全可以替代Apache,但Apache毕竟是tomcat的前辈级人物,并且市场上也有不少人还在用Apache,所以Apache还会继续存在,不会被取代,apache不能解析java的东西,但解析html速度快。

tomcat和apache的联系:

  1. Apache是普通服务器,本身只支持html即普通网页,可以通过插件支持php,还可以与Tomcat连通(Apache单向连接Tomcat,就是说通过Apache可以访问Tomcat资源,反之不然)。  

  2. Apache只支持静态网页,但像asp、jsp、php、cgi等动态网页就需要Tomcat来处理。

  3. Apache和Tomcat整合使用:

    如果客户端请求的是静态页面,则只需要Apache服务器响应请求;

    如果客户端请求动态页面,则是Tomcat服务器响应请求,将解析的JSP等网页代码解析后回传给Apache服务器,再经Apache返回给浏览器端。

    这是因为jsp是服务器端解释代码的,Tomcat只做动态代码解析,Apache回传解析好的静态代码,Apache+Tomcat这样整合就可以减少Tomcat的服务开销。

  4. Apache和Tomcat是独立的,在同一台服务器上可以集成。


     

如何在Linux上安装WEB服务器Apache2 ?(自己整理)
   1 解压 
     tar -zxvf htttpd-2.4.23.tar.gz   (apache2安装包)
   2 安装
      ./configure
      configure: error:APR not found 报错,需要查文档
   3 先安装apr
     tar -zxvf apr-1.5.2.tar.gz
     ./configure --prefix=/user/local/apr
      --prefix 表示将apr安装到指定路径下
   4  输入make指令  
   5  make install 
   6  再次安装httpd
      ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr
      报错:apr-util not found.
   7  apr-util
      tar -zxvf apr-util-1.5.4.tar.gz
      ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config
   8 make 
   9 make install
   10 再次安装htpd
     ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr/bin/apr-1-config  --with-apr-util=/usr/local/apr-util/bin/apu-1-config
   11 报错 pcre-config not found
   12 tar -zxvf pcr-8.39.tar.gz
      ./configure --prefix=/usr/local/pcre --with-apr=/usr/local/apr/bin/apr-1-config
   13 make
   14 make install
   15 再次安装httpd
          ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr/bin/apr-1-config  --with-apr-util=/usr/local/apr-util/bin/apu-1-config --with-pcre=/usr/local/pcre/bin/pcre-config
   16  make 
   17  make install
   18 修改配置文件:/usr/local/apache/conf/httpd.conf
       1.先进入上述文件
       vi httpd.conf
        修改端口为 Listen 9999
        2.进入/usr/local/apache/bin
        执行  ./apachectl -k start
   19  vi httpd.conf 
        插入ServerName localhost:9999
   20   启动apacher 2
        ./apchectl -k start 
   21   检测是否启动成功
        netstat -ltnp
   22  查看ip地址 ,使用ip+端口在地址栏登录
        ./apachectl -k start/stop/restart 表示 启动/停止/重启


需要下载的文件清单:

如何在Linux上安装WEB服务器Apache2 ?_第1张图片

Apache2安装:(teacher版)

1)解压   tar -zxvf httpd-2.4.23.tar.gz

2)安装

./configure

报错:configure: error: APR not found.  Please read the documentation.

查阅文档以后发现需要事先安装很多的依赖

3)APR

tar -zxvf apr-1.5.2.tar.gz

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

--prefix表示将apr安装到哪个目录,建议大家都加上该参数设置安装目录,以便于后续查找使用

make

make install

 

安装apr时运行./configure --prefix=/usr/local/apr时报如下错:

configure: error: in `/software/apr-1.5.2':

configure: error: no acceptable C compiler found in $PATH See `config.log' for more details

原因及解决办法:

你的机器里没有安装任何C语言编译器,可以安装gcc。 可以在安装盘里找到gcc相关的包进行安装,不过会比较繁琐,因为关联的包会比较多。 如果可以上网,使用yum安装是比较好的选择: yum install gcc

安装完gcc之后,再重新执行./configure --prefix=/usr/local/apr命令时就不会报错。

 

4)再次安装httpd

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

报错:configure: error: APR-util not found.  Please read the documentation.

 

5) APR-util

tar -zxvf apr-util-1.5.4.tar.gz

./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config

make

make install

 

6)再次安装httpd

./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config

 

又报错:

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

 

7)pcre

tar -zxvf pcre-8.39.tar.gz

./configure --prefix=/usr/local/pcre --with-apr=/usr/local/apr/bin/apr-1-config

make

make install

 

安装pcre执行明令./configure --prefix=/usr/local/pcre --with-apr=/usr/local/apr/bin/apr-1-config时,报如下错:

configure: error: You need a C++ compiler for C++ support.

原因及解决办法:

你的机器里没有安装任何C++语言编译器,可以通过,命令yum install gcc-c++安装c++编译器。

安装完c++之后,再重新执行./configure --prefix=/usr/local/pcre --with-apr=/usr/local/apr/bin/apr-1-config命令时就不会报错。

 

8)再次安装httpd

./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config --with-pcre=/usr/local/pcre/bin/pcre-config  

 

终于没有问题了

make

make install

 

9) 修改配置文件: /usr/local/apache/conf/httpd.conf  (不存在该文件,为什么呢,待解决)

Listen 9999

 

启动Apache2

./apachectl -k start

报错如下:

AH00557: httpd: apr_sockaddr_info_get() failed for kgc

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 this message

 

修改配置/usr/local/apache/conf/httpd.conf,增加如下内容:

ServerName localhost:9999

 

再次启动,启动后通过netstat -ltnp命令查看端口状态

./apachectl -k start/stop/restart 表示 启动/停止/重启



补充,卸载centos自带的apache软件,卸载上述的apache方法,以后补充。

在linux上删除已经安装的软件或者服务,比如centos上卸载linux自带的apache要如何操作呢?下面来一起看看。

01.首先登陆你的SSH控制界面,然后在其中输入查找一下跟httpd相关的软件包,运行命令:

rpm -qa|grep httpd

运行后如图所示,会显示出跟httpd相关的软件包:

查看apache相关的软件包

02.接着开始使用centos下的卸载命令, “rpm -e 软件或服务名”,我们运行:

rpm -e httpd

如果出现类似“httpd >= 2.2.0 is needed by (installed) gnome-user-share-0.10-6.el5.i386”这样的提示就说明,httpd这个服务是依赖于gnome-user-share的,我们需要先卸载gnome-user-share然后再卸载apache,我们运行:

rpm -e gnome-user-share

删除成功后,再运行上面的rpm -e httpd,这样就成功卸载了apache!

 

你可能感兴趣的:(Linux,安装与配置)