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. 源码都没调试过,怎么能说熟悉 redis 呢?

    一:背景 1. 讲故事 记得在很久之前给初学的朋友们录制 redis 视频课程,当时结合了不少源码进行解读,自以为讲的还算可以,但还是有一个非常核心的点没被分享到,那就是源码级调试, 对,读源码还远远 ...

  2. 【总结】mybatis分页(实现 + 原理)

    1.mybatis pageHelper分页实现 (1)引入依赖 (2)配置pageHelper插件 <configuration> <!-- 引入 pageHelper插件 --& ...

  3. ERP的权限管理的操作与设计--开源软件诞生24

    赤龙ERP用户与权限管理讲解--第24篇 用日志记录"开源软件"的诞生 [进入地址 点亮星星]----祈盼着一个鼓励 博主开源地址: 码云:https://gitee.com/re ...

  4. TCP拥塞控制原理

    一.何为拥塞 路由器无法处理高速到达的数据而被迫丢弃数据的现象叫做拥塞. 二.何为拥塞控制 TCP流量控制时为了平衡一个链接中接收方和发送方的速度匹配问题,当发送方发现发送速度大于接收方的接收速度时动 ...

  5. 在Docker上部署自动更新ssl证书的nginx + .NET CORE

    突发奇想要搞一个ssl的服务器,然后我就打起了docker的主意,想着能不能搞一个基于Docker的服务器,这样维护起来也方便一点. 设想 想法是满足这么几点: .NET CORE on Docker ...

  6. TypeScript注意

    中文文档中,元组目前已经不能越界访问

  7. PyQt5信号与槽关联的两种方式

    目录 通过QtDesigner 手动关联的方式 通过QtDesigner 单击菜单栏切换到信号槽编辑模式 单击控件并拖动鼠标到信号的接收对象上,一般为对话框自己,松开鼠标弹出信号和槽选择框 选中cli ...

  8. shell编程之算术扩展(引号、命令替换、算术扩展)

    1.单引号 .双引号.反引号的区别 单引号:忽略所有特殊字符 双引号:忽略大部分特殊字符($  `等字符除外) [root@tlinux shell]# echo '*' * [root@tlinux ...

  9. 双数组字典树(Double Array Trie)

    参考文献 1.双数组字典树(DATrie)详解及实现 2.小白详解Trie树 3.论文<基于双数组Trie树算法的字典改进和实现> DAT的基本内容介绍这里就不展开说了,从Trie过来的同 ...

  10. 《GNU_makefile》第六章——变量

    makefile中的变量特征和C语言中的宏一样. 变量使用 =,:=,?= 和 define 定义 一些特殊的自动化变量:$< $@ $^ $* 1.变量的引用 通过 $(VAR) 或 ${VA ...