wlyyb521 发表于 2018-11-17 10:29:45

Linux 编译安装apache及应用

  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
# yum grouplist Development Tools   (查看有没有安装)  
# yum groupinstall “Development Tools”    (安装组Development Tools)
  然后依次安装apr-devel,apr-util-devel,pcre-devel
#tar xvf apr-devel-1.4.8.tar.bz2   #解压  
#ls
  
apr-devel-1.4.8    apr-devel-1.4.8.tar.bz2
  
#cd apr-devel-1.4.8
  
#./configure --prefix=/app/apr      #--prefix=/PATH: 指定默认安装位置
  
#make -j 4       # -j 4 调用cpu的个数,根据自己的配置而定
  
#make install       #其他两个雷同,不做演示
  这三个依赖也可以用yum安装
# yum install apr-devel -y  
# yum install apr-util-devel -y
  
# yum install pcre-devel -y
  3.解压,tar xvf httpd...
# ls  
httpd-2.2.34.tar.bz2
  
# tar xvf httpd-2.2.34.tar.bz2
  
# ls
  
httpd-2.2.34httpd-2.2.34.tar.bz2
  
#./configure --prefix=/app/apache --sysconfdir=/etc/apache #--sysconfdir=/PATH配置文件默认位置
  
#make -j 4
  
#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后面加上安装位置,否则每次开启服务的时候都会加上很长路径。如下
# vim /etc/profile.d/cyn.sh  
export PATH=$PATH:/app/apache/bin
  
# source cyn.sh
  5.启动服务
# ls /app/apache/bin/  
ab         apxs      dbmmanageenvvars-stdhtcachecleanhtdigesthttpd      logresolve
  
apachectlcheckgidenvvars    fcgistarterhtdbm         htpasswdhttxt2dbmrotatelogs
  
# apachectl start      #这是正常启动
  有时候启动服务的的时候会报错,如下
# 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引起的错误
# vim /etc/apache/httpd.conf  
#ServerName www.example.com:80
  
ServerName localhost:80
  有时候,还会因为端口占用引起错误
# apachectl start  
apache2 address already in use:make_sock:could not bind to address [::]:80
  
# netstat -lnp|grep 80
  
tcp6       0      0 :::80                   :::*                  LISTEN      21619/httpd   #进程httpd的id是21619
  
# kill 21619      #杀死进程
  
# apachectl start   #重新启动服务
  还有可能是因为防火墙的原因
# iptables -F    #清除防火墙即可  6.添加欢迎页面
  到这里你在浏览器地址栏输入你的本地IP会出现 It work !字样,说明你的apache简单配置完成了。你也可以自己添加,如下
# vim /app/apache/htdocs/index.html  
i am cyn !         #HTML文档,自行添加

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


页: [1]
查看完整版本: Linux 编译安装apache及应用