Linux  下简单配置apache

           本文操作系统是centos7,安装的httpd的版本是2.4,下载的源码包是httpd-2.4.27.tar.bz2,依赖是apr-devel-1.4.8.tar.bz2,pcre-devel-8.32.tar.bz2,apr-util-devel-1.5.2.tar.bz2

    

     软件安装一般分为源码编译安装、yum安装和rpm包安装。本文介绍源码安装。

       源码编译安装分为三部分:configure脚本 ;make;make install

1.下载源码:×××,依赖下载地址:依赖下载

2.相关依赖,安装apache需要首先安装Development Tools

[root@localhost(yuaning) ~]# yum grouplist Development Tools   (查看有没有安装)
[root@localhost(yuaning) ~]# yum groupinstall “Development Tools”    (安装组Development Tools)

          然后依次安装apr-devel,apr-util-devel,pcre-devel

[root@localhost(yuaning) ~]#  tar xvf apr-devel-1.4.8.tar.bz2   #解压
[root@localhost(yuaning) ~]#  ls
apr-devel-1.4.8    apr-devel-1.4.8.tar.bz2
[root@localhost(yuaning) ~]#  cd apr-devel-1.4.8
[root@localhost(yuaning) ~]#  ./configure --prefix=/app/apr      #--prefix=/PATH: 指定默认安装位置
[root@localhost(yuaning) ~]#  make -j 4       # -j 4 调用cpu的个数,根据自己的配置而定
[root@localhost(yuaning) ~]#  make install       #其他两个雷同,不做演示

            这三个依赖也可以用yum安装

[root@localhost(yuaning) ~]# yum install apr-devel -y
[root@localhost(yuaning) ~]# yum install apr-util-devel -y
[root@localhost(yuaning) ~]# yum install pcre-devel -y

3.解压,tar xvf httpd...

[root@localhost(yuaning)  ~]# ls
httpd-2.2.34.tar.bz2
[root@localhost(yuaning)  ~]# tar xvf httpd-2.2.34.tar.bz2 
[root@localhost(yuaning)  ~]# ls
httpd-2.2.34  httpd-2.2.34.tar.bz2
[root@localhost(yuaning)  ~]#  ./configure --prefix=/app/apache --sysconfdir=/etc/apache #--sysconfdir=/PATH配置文件默认位置
[root@localhost(yuaning)  ~]#  make -j 4
[root@localhost(yuaning)  ~]#  make install

            安装过程还是三步,现在说一下具体的选项:

            • --prefix=/PATH: 指定默认安装位置       

            • --sysconfdir=/PATH 配置文件默认位置

            • --enable-so:支持动态共享模块,如果支持php将不能与apache一起工作,必须要有

            • --enable-ssl:启用ssl功能,如果不启用将无法使用https

            • --enable-mpms-shared=all:prefork、worker、event

            • --with-mpm=event:event为默认

            • --enable-rewrite:支持URL重写

            • --enable-cgi :支持cgi

            • --enable-cgid:httpd使用event或者worker得启用被线程方式访问

            • --enable-modules=most :启用大多数模块

            • --enable-mods-shared=most:启用大多数共享模块            


4. 添加环境变量(选做)

          path后面加上安装位置,否则每次开启服务的时候都会加上很长路径。如下

[root@localhost(yuaning) ~]# vim /etc/profile.d/cyn.sh
export PATH=$PATH:/app/apache/bin
[root@localhost(yuaning) profile.d]# source cyn.sh

 5.启动服务

[root@localhost(yuaning) ~]# ls /app/apache/bin/
ab         apxs      dbmmanage  envvars-std  htcacheclean  htdigest  httpd      logresolve
apachectl  checkgid  envvars    fcgistarter  htdbm         htpasswd  httxt2dbm  rotatelogs
[root@localhost(yuaning) ~]# apachectl start        #这是正常启动

           有时候启动服务的的时候会报错,如下

[root@localhost(yuaning) ~]# apachectl start
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using localhost.localdomain. 
Set the 'ServerName' directive globally to suppress this message

           有时候启动服务会报错,错误的原因有很多。例如下面这个,因为servername引起的错误

[root@localhost(yuaning) ~]# vim /etc/apache/httpd.conf
#ServerName www.example.com:80
ServerName localhost:80

           有时候,还会因为端口占用引起错误

[root@localhost(yuaning) ~]# apachectl start
apache2 address already in use:make_sock:could not bind to address [::]:80
[root@localhost(yuaning) ~]# netstat -lnp|grep 80
tcp6       0      0 :::80                   :::*                    LISTEN      21619/httpd     #进程httpd的id是21619
[root@localhost(yuaning) ~]# kill 21619      #杀死进程
[root@localhost(yuaning) ~]# apachectl start     #重新启动服务

           还有可能是因为防火墙的原因 

[root@localhost(yuaning) htdocs]# iptables -F    #清除防火墙即可

6.添加欢迎页面

        到这里你在浏览器地址栏输入你的本地IP会出现 It work !字样,说明你的apache简单配置完成了。你也可以自己添加,如下

[root@localhost(yuaning) htdocs]# vim /app/apache/htdocs/index.html     
<html><body><h1>i am cyn !</h1></body></html>           #HTML文档,自行添加

Linux 编译安装apache及应用_apache

           只能是本机的浏览器才能访问,要想其他人也可访问,把你的Linux搞到云服务器上配置个公网IP即可。