简介:实战演练apache网站服务器的搭建
Apache简介:
Apache软件基金会的一个开源免费的网页服务器,也是目前世界上使用最广泛的一种web server ,
apache最出名的是它跨平台,高效和稳定,可以运行在几乎所有广泛使用的计算机平台上。
其特点是简单、速度快、性能稳定,并可做代理服务器来使用,并且可通过简单的 API 扩充,将 Perl/Python 等解释器编译到服务器中。
 
源码编译安装 Apache:
 
下载组件apr并解压:
组件apr官方网站:http://apr.apache.org/download.cgi
wget http://mirror.bit.edu.cn/apache//apr/apr-1.7.0.tar.gz
tar -xf apr-1.7.0.tar.gz
 
下载组件apr-util并解压:
组件apr-util官方网站:http://apr.apache.org/download.cgi
wget http://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-util-1.6.1.tar.gz
tar -xf apr-util-1.6.1.tar.gz
 
下载apache并解压:
apache官方网站:http://httpd.apache.org/download.cgi
wget http://mirror.bit.edu.cn/apache//httpd/httpd-2.4.39.tar.gz
tar -xf httpd-2.4.39.tar.gz
 
安装gcc环境:
yum install -y gcc*
 
安装zlib-devel库:
yum install -y zlib-devel
 
安装xml 的解析器:
yum install -y expat-devel
 
下载并安装pcre正则表达式库:
下载地址:https://ftp.pcre.org/pub/pcre/
tar -xf pcre-8.43.tar.gz
cd pcre-8.43
mkdir -p /usr/local/pcre
./configure --prefix=/usr/local/pcre
make && make install
 
把组件apr与组件apr-util拷贝到apache安装包里:
cp -rf apr-1.7.0 /root/test/httpd-2.4.39/srclib/apr
cp -rf apr-util-1.6.1 /root/test/httpd-2.4.39/srclib/apr-util
 
进入apache解压包进行./configure进行环境收集检验与配置相关模块:
cd /root/test/httpd-2.4.39
mkdir -p /usr/local/apache
 
 
./configure \--prefix=/usr/local/apache \--sysconfdir=/usr/local/apache/etc \--with-apr=/root/test/apr-1.7.0
\--with-apr-util=/root/test/apr-util-1.6.1 \--with-included-apr \--with-pcre=/usr/local/pcre \--enable-deflate
\--enable-expires \--enable-headers \--enable-so \--enable-modules=most \--with-mpm=worker \--enable-rewrite
 
选项说明:
--prefix #指定安装目录
--sysconfdir #指定配置文件的路径--with-apr #指定依赖文件的路径
--with-apr-util #指定依赖文件的路径
--with-included-apr #增加编译效率的
--with-pcre #指定pcre正则表达式库安装路径
--enable-deflate #开启压缩文件提高速度节约带宽
--enable-expires #开启让浏览器缓存,减轻服务器压力,提高访问速度
--enable-headers #使得支持http头
--enable-so #使得支持动态模块
--enable-modules=most #使得支持大多数模块
--with-mpm=worker #使得Apache工作在worker模式下
--enable-rewrite #使得支持地址重写
 
编译并安装apache:
make -j 4 && make install
 
设置服务器名称:
vi /usr/local/apache/etc/httpd.conf
输入:ServerName进行搜索
添加:ServerName www.xdclss.com
 
测试并启停apache服务器:
ln -s   /usr/local/apache/bin/*   /usr/sbin/ #设置软连接
echo "export PATH=/usr/local/apache/bin:$PATH" >> /etc/profile #设置环境变量
source /etc/profile #加载环境变量
httpd -t #测试配置文件语法有没有错误
httpd -k start #启动apache服务
httpd -k stop #关闭apache服务
在防火墙关闭的条件下,打开浏览器,输入IP地址,成功打开apache测试页面
 
相关报错收集与解决办法:
(1)make[1]: *** [xml/apr_xml.lo] Error 1
make[1]: Entering directory `/home/test/apr-util-1.6.1'
/bin/sh /usr/local/apache/apr/build-1/libtool --silent --mode=compile gcc -g -O2 -
pthread -DHAVE_CONFIG_H -DLINUX -D_REENTRANT -D_GNU_SOURCE -I/home/test/apr-
util-1.6.1/include -I/home/test/apr-util-1.6.1/include/private -
I/usr/local/apache/apr/include/apr-1 -o xml/apr_xml.lo -c xml/apr_xml.c &&
touch xml/apr_xml.lo
xml/apr_xml.c:35:19: fatal error: expat.h: No such file or directory
# include <expat.h> ^
compilation terminated.
make[1]: *** [xml/apr_xml.lo] Error 1
make[1]: Leaving directory `/home/test/apr-util-1.6.1'
make: *** [all-recursive] Error 1
错误原因:缺少xml 的解析器
解决方法:yum -y install expat-devel
(2)configure 时 error: APR not found
错误详情:
configure:
checking for APR… no
configure: error: APR not found. Please read the documentation.
错误原因:没有指定 Apache 必需组件 APR 或没有加–with-apr 选项指定 APR
的安装位置。
解决方法:安装 APR 并且加-–with-apr 选项指定正确的位置。
(3)configure 时-–with-apr 选项不正确
错误详情:
configure:
checking for APR… configure: error: –with-apr requires a directory
or file to be provided
configure:
checking for APR… configure: error: the –with-apr parameter is
incorrect. It must specify an install prefix, a build directory, or
an apr-config file.
错误原因:-–with-apr 选项不能为空或者指定的 APR 的位置不正确
解决方法:指定正确的 APR 选项。其实系统中已经使用 yum 安装了 APR,却不
知道如何指定 yum 安装的 APR 的位置,故出此错误,也可以进行手动源代码编译安装
APR来解决这个错误。
(4)configure 时 error: APR-util not found
错误详情:
configure:
checking for APR-util… no
configure: error: APR-util not found. Please read the documentation.
错误原因:没有安装 Apache 必需组件 APR-util 或没有加–with-apr-util 选
项指定 APR-util 的位置
解决方法:-–with-apr-util 选项指定正确的安装位置
(5)configure 时 error: pcre-config for libpcre not found
错误详情:
checking for pcre-config… false
configure: error: pcre-config for libpcre not found. PCRE is required
and available from http://pcre.org/
错误原因:没有安装 Apache 必需组件 PCRE 或没有加–with-pcre 选项指定
PCRE 的安装位置。
解决方法:安装 PCRE 并且加–with-pcre 选项指定正确的安装位置
(6)configure 时 error: Did not find pcre-config script at
/usr/local/pcre2
错误详情:
checking for pcre-config… false
configure: error: Did not find pcre-config script at /usr/local/pcre2
错误原因: httpd 2.4.39 不支持 pcre2?
解决方法:下载 pcre-8.43 安装即可。
(7)启动 Apache 时提示设置 ServerName
错误详情:
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
错误原因:没有设置服务器名称
解决方法:vi /usr/local/apache/etc/httpd.conf
 
 
 
 
 
 
 
 
 
 
 
 
 

CentOS7 实战源码部署apache网站服务器的更多相关文章

  1. CentOS7 实战源码部署nginx网站服务器

    简介:实战演练nginx网站服务器的搭建 nginx 简介: Nginx是一款高性能的 HTTP 和反向代理服务器   Nginx的优点: 1.高并发量:根据官方给出的数据,能够支持高达 50,000 ...

  2. CentOS7 实战源码部署php服务与nginx 的整合

    简介:实战演练php服务的搭建 PHP是一种脚本语言,常用于做动态网站的. 源码编译安装: 安装依赖组件: yum -y install gcc gcc-c++ bzip2 bzip2-devel b ...

  3. CentOS7 实战源码安装mysql5.7.17数据库服务器

    CentOS7 实战源码安装mysql5.7.17数据库服务器 简介:实战演练mysql数据库服务器的搭建  mysql简介: mysql是一个开源的关系型数据库管理系统,现在是oracle公司旗下的 ...

  4. Centos7源码部署apache/httpd服务

    httpd:是一个提供网站服务的程序 监听端口:80 环境准备: Linux CentOS7.3系统 使用一台服务端,一台客户端即可: 一.安装httpd 1:安装 [root@localhost ~ ...

  5. Centos7源码安装Apache和PHP

    源码安装Apache 安装需要的依赖 yum -y install gcc autoconf automake make pcre pcre-devel openssl openssl-devel​# ...

  6. centos7源码安装Apache及Tomcat

    源码安装Apache (1) 一.通过 https://apr.apache.org/  下载 APR 和 APR-util 通过 http://httpd.apache.org/download.c ...

  7. linux下源码安装apache服务

    1.搭建静态网站是,我们只需要搭建apache服务即可满足要求. 例如:如果我再客户端游览器输入地址,他会找到192.168.1.100这个服务器,然后根据端口会找到apache服务器.apache他 ...

  8. Linux学习日记——源码编译Apache

    [本文为笔者在学习Linux 下的软件安装时,尝试使用源码安装Apache 的过程,事后进行一个小小的总结,发现错误望指正.] 一.典型的源码编译安装软件的过程包括以下3步: 1) 运行 config ...

  9. 烂泥:源码安装apache

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 最近要开始学习nagios监控方面的知识了,但是nagios与apache结合的比较紧密,所以本篇文章就先把apache的源码安装学习下. 我们现在分以 ...

随机推荐

  1. 安装Linux软件时遇到这个问题,如何解决?

    提示 Could not get lock /var/lib/dpkg/lock 报错? 有些小伙伴在使用 apt 包管理器更新或安装软件时,可能会遇到过诸如以下的错误提示: E: Could not ...

  2. Java线程池一:线程基础

    最近精读Netty源码,读到NioEventLoop部分的时候,发现对Java线程&线程池有些概念还有困惑, 所以深入总结一下 线程创建 Java线程创建主要有三种方式:继承Thread类.实 ...

  3. 一次SQL注入导致的"越权"

    原文来自SecIN社区-作者:tkswifty 相关背景   在实际的业务开发中,SQL交互往往是业务系统中不可或缺的一项.在Java中提供了类似Mybatis.Hibernate.SpringDat ...

  4. python语法元素的名称

    变量 什么是变量? """ 变量是保存和表示数据值的一种语法元素,在程序中十分常见.顾名思义,变量的值是可以改变的,能够通过赋值(使用等号"=")方式 ...

  5. 一万字详解 Redis Cluster Gossip 协议

    Redis Cluster Gossip 协议 大家好,我是历小冰,今天来讲一下 Reids Cluster 的 Gossip 协议和集群操作,文章的思维导图如下所示. 集群模式和 Gossip 简介 ...

  6. JZOJ 【NOIP2016提高A组集训第16场11.15】兔子

    JZOJ [NOIP2016提高A组集训第16场11.15]兔子 题目 Description 在一片草原上有N个兔子窝,每个窝里住着一只兔子,有M条路径连接这些窝.更特殊地是,至多只有一个兔子窝有3 ...

  7. Linux之【GNU】、【GPL】、【linux系统组成】

    GNU,什么是GNU GNU全称:GNU's not unix GNU的重要组件(Emacs,gcc,bash,gawk等)加上自己的内核构成了GNU自己的系统--->没用 现在linux中的一 ...

  8. Mybatis学习03

    title: Mybatis学习03 date: 2020-01-19 13:03:20 tags: Mybatis学习的第二天,内容有日志和分页. <!--more--> 1.日志 1. ...

  9. scrapy爬虫爬取小姐姐图片(不羞涩)

    这个爬虫主要学习scrapy的item Pipeline 是时候搬出这张图了: 当我们要使用item Pipeline的时候,要现在settings里面取消这几行的注释 我们可以自定义Item Pip ...

  10. 简单且实用的关闭当前应用的auto.js 代码

    function closeCurrentPackage() { // 可以稍加修改,关闭指定app let packageName = currentPackage(); app.openAppSe ...