Linux(CentOS 7下httpd的安装)

自己是个linux小白。最近几天在学linux,看到视频教程中安装源码包httpd所以自己想试一试,安装过程中有很多的错误,在网上找了很久也没找到,要么就是答非所问,安装了3个多小时才弄好,希望有像自己一样的小白能获得一点帮助。

步骤

下面的步骤是在安装过gcc的基础上。

1.源码包httpd下载

httpd下载链接

我是首先下载到了Window下。然后采用xShell将压缩包传到了linux虚拟机中。

点击选中的按钮会出现文件传输的页面。



双击即可上传。很方便。

注意:linux:一般源码包保存在 /usr/local/src/目录下

软件安装位置 /usr/local

看视频教程时,因为教程可能比较老,过程没有一点报错,结果自己安装时出现了错误。

软件配置与检查:./configure(这个步骤需要先进入解压好的httpd文件夹)

后面加上./configure --prefix=/usr/local/httpd指定安装的路径

结果报错如下:

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

出现这种情况表示有依赖包还没装好。

需要安装:APR,APR-util


下载地址

http://apr.apache.org/download.cgi

2.步骤同上:分别传输到linux的/usr/local/src/文件夹下,然后分别解压

tar -zxvf apr-1.7.0.tar

tar -zxvf apr-util-1.6.1.tar

3.将apr和apr-util复制到httpd-2.4.46/srclib目录下

cp -a -r apr-1.7.0/ ./httpd-2.4.416/srclib/apr

cp -a -r apr-util-1.6.1/ ./httpd-2.4.46/srclib/apr-util

4.再次进入解压好的httpd文件夹

执行命令

./configure --prefix=/usr/local/httpd/ --with-included-apr --with-included-apr --with-included-apr-util

此时又会出现新得错误

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

说明缺少 pcre 包

下载链接



这里需要注意以下:

pcre包 和pcre2包 不一样,我中午下载错了。然后虽然安装但是这个错误依然无法解决。

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

所以一定注意要下载的是pcre包!!!!!!别下载错了!,不然会一直报那个错。

步骤同上 上传到linux

解压

进入解压好的pcre (这里可以按tab键 自动补全)

./configure --prefix=/usr/local/pcre --enable-utf8

可能会出现错误

configure: error: Invalid C++ compiler or C++ compiler flags

此时就需要安装gcc-c++

yum install -y gcc-c++

下载之后在进行

make && make install

5.再一次进入解压好的httpd-2.4.46/的目录

./configure --prefix=/usr/local/httpd/ --with-included-apr --with-included-apr --with-included-apr-util --with-pcre=/usr/local/pcre

make && make install

又出现错误:apahce./gen_test_char > test_char.h /bin/sh: ./gen_test_char: 没有那个文件或目录(省略10000字)好几个错误

yum -y install expat-devel(查了很久。。。。。太坑了,在这个过程还删除了apr,apr-util,pcre,httpd重新开始装了两次,最后才成功。。。。)

6..再再一次进入解压好的httpd-2.4.46/的目录

./configure --prefix=/usr/local/httpd/ --with-included-apr --with-included-apr --with-included-apr-util --with-pcre=/usr/local/pcre

make && make install

完美撒花.......

7.启动httpd的服务

启动命令(需要使用绝对路径):

/usr/local/httpd/bin/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

说明端口被占用

vi /usr/local/httpd/conf/httpd.conf

修改配置文件 ,将ServerName后面的端口改成8080

因为内容较多,所以需要再文件中进行查找。

命令模式下输入: /ServerName

按回车 :

1.按n可以查看下一个出现要查询的字符的地方

2.找到之后 按i可以插入删掉80改为8080

3.修改之后按Esc推出插入模式,按:wq保存退出

此时重新启动httpd服务:

/usr/local/httpd/bin/apachectl start

就可以看到httpd(pid号)already running。。。

8.此时就可以再自己的电脑浏览浏览器输入虚拟机的ip地址就可以看到



如果还不能访问,

再linux输入 systemctl stop firewalld 关闭防火墙。

完美撒花!!!

第一次发文章,而且是个对linux没有经验的小白,如果有错误欢迎指出。大家一块交流学习。!

Linux(CentOS 7下httpd的安装)的更多相关文章

  1. Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因

    原文:Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因 今天试了下在虚拟机上利用CentOS系统的yum命令安装好了httpd(apache2.4.6), ...

  2. Linux CentOS 7 下 Apache Tomcat 7 安装与配置

    前言 记录一下Linux CentOS 7安装Tomcat7的完整步骤. 下载 首先需要下载tomcat7的安装文件,地址如下: http://mirror.bit.edu.cn/apache/tom ...

  3. Linux/CentOS环境下如何安装和配置PhantomJS工作环境

    PhantomJS 是一个基于WebKit的服务器端 JavaScript API.它全面支持web而不需浏览器支持,其快速,原生支持各种Web标准: DOM 处理, CSS 选择器, JSON, C ...

  4. 基于CentOS 7下最小化安装的操作系统搭建Zabbix3.0环境

    环境说明 系统版本:CentOS Linux release 7.3.1611 (Core) 内核版本:3.10.0-514.el7.x86_64 Httpd版本:Apache/2.4.6 (Cent ...

  5. CentOS 7下源码安装MySQL 5.7

    网上说linux安装mysql服务分两种安装方法: ①源码安装,优点是安装包比较小,只有几十M左右,缺点是安装依赖的库多,安装编译时间长,安装步骤复杂容易出错: ②使用官方编译好的二进制文件安装,优点 ...

  6. CentOS 6 下RPM方式安装MySQL5.6

    CentOS 6 下RPM方式安装MySQL5.6 1. 下载Linux对应的RPM包,如:CentOS6.7_64对应的RPM包,如下:[root@mysql ~]# ll总用量 113808-rw ...

  7. 在Linux(CentOS 6.6)服务器上安装并配置基于Apache的SVN服务器

    #!/bin/bash # # 在Linux(CentOS 6.6)服务器上安装并配置基于Apache的SVN服务器: # # .安装服务 # .创建svn版本库 # .创建svn用户 # .配置sv ...

  8. Linux(CentOS 7)命令行模式安装VMware Tools 详解

    本篇文章主要介绍了如何在Linux(CentOS 7)命令行模式安装VMware Tools,具有一定的参考价值,感兴趣的小伙伴们可以参考一下. 本例中为在Linux(以CentOS 7为例)安装VM ...

  9. Centos系统下Docker的安装

    一.检查内核版本 安装Docker,需要linux内核大于3.10 使用uname -r 来检查 二. Centos系统下Docker的安装 1. 安装需要的软件包 yum install -y yu ...

随机推荐

  1. 【应用服务 App Service】App Service证书导入,使用Key Vault中的证书

    问题描述 正常情况下,如果需要为应用服务安装SSL证书,可以在证书准备好的情况,通过门户上传即可,详细步骤可以参考微软官方文档(在 Azure 应用服务中添加 TLS/SSL 证书:https://d ...

  2. 手撸ORM浅谈ORM框架之Delete篇

    快速传送 手撸ORM浅谈ORM框架之基础篇 手撸ORM浅谈ORM框架之Add篇 手撸ORM浅谈ORM框架之Update篇 手撸ORM浅谈ORM框架之Delete篇 手撸ORM浅谈ORM框架之Query ...

  3. Java线程知识拾遗

    知识回顾 进程与线程是常常被提到的两个概念.进程拥有独立的代码段.数据空间,线程共享代码段和数据空间,但有独立的栈空间.线程是操作系统调度的最小单位,通常一个进程会包含一个或多个线程.多线程和多进程都 ...

  4. 833. Find And Replace in String —— weekly contest 84

    Find And Replace in String To some string S, we will perform some replacement operations that replac ...

  5. 1.深入Istio:Sidecar自动注入如何实现的?

    转载请声明出处哦~,本篇文章发布于luozhiyun的博客:https://www.luozhiyun.com 本文使用的Istio源码是 release 1.5. 这篇文章打算讲一下sidecar, ...

  6. Docker学习—Compose

    前言 前面<Docker学习-DockerFile>文中介绍了dockerfile相关的语法,及使用方式:接下来了解docker三剑客之一的 Compose:接下来详细学习. 一.dock ...

  7. MySQL全面瓦解7:查询的过滤条件

    概述 在实际的业务场景应用中,我们经常要根据业务条件获取并筛选出我们的目标数据.这个过程我们称之为数据查询的过滤.而过滤过程使用的各种条件(比如日期时间.用户.状态)是我们获取精准数据的必要步骤, 这 ...

  8. TCP 三次握手和四次挥手图解(有限状态机)

    传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的.可靠的.基于字节流的传输层通信协议,由 IETF 的 RFC 793 定义,是为了在不可靠的互联网络 ...

  9. 面试官问我redis数据类型,我回答了8种

    面试官:小明呀,redis 有几种数据结构呀? 小明:8 种 面试官:那你说一下分别是什么? 小明:raw,int,ht,zipmap,linkedlist,ziplist,intset,skipli ...

  10. 论文解读 - Relational Pooling for Graph Representations

    1 简介 本文着眼于对Weisfeiler-Lehman算法(WL Test)和WL-GNN模型的分析,针对于WL测试以及WL-GNN所不能解决的环形跳跃连接图(circulant skip link ...