1.进入apache官网https://www.apache.org/,点击Download

2.如图选择

3.选择httpd

4.下载两个包,2.2为CentOS6使用,2.4为CentOS7使用

一、CentOS6

1.输入命令rz,会弹出对话框可以把windows的文件传到linux中去。


2.在弹出对话框中选择软件包--->添加--->确定。注意尽量将软件放在桌面,我把软件放在D盘,然后通过桌面的快捷方式添加后传到linux中的文件就已经被损坏。传进来的文件会存放到当前目录下。

/usr/local/src/ 目录多为存放软件源码包的地方,所以将他移动到此目录下,但是也不是绝对的只是推荐这么做而已。


3.将传进来的文件解压


4.下面的编译需要用到httdp目录下的脚本,所以我用cd httpd把目录切换到http中去

.configure 这个是个脚本文件, 可以指定软件的安装路径、配置文件路径等等一列参数。

--prefix软件安装路径

--sysconfigdir配置文件的安装路径

还有更多的参数可以通过./configure --help来查看


5.$?可以查询上一命令的执行结果是成功还是失败。通过此命令可以查看./configure是否成功,如果提示需要那么安装包,根据提示安装即可。

echo $? 0为上一命令执行成功,1为上一命令执行失败。


6.如果上一命令执行成果了,那么执行make 根据配置构建程序 make install安装 我这里就把两条命令写在一起了


7.查看安装目录,此时apache就安装完成了


8.软件配置,接下来的步骤就不属于安装的范畴了,为了测试安装没问题,就把软件简单配置一下然后做测试。

  • 设置环境变量要将apache的安装目录写在前面,设置此路径优先于系统中的路径
[root@centos6 htdocs]echo 'export PATH=/app/httpd22/bin:$PATH' >/etc/profile.d/https22.sh
[root@centos6 htdocs]. /etc/profile.d/https22.sh
[root@centos6 htdocs]echo $PATH
  • 确认方框中的变量在最前面,所以优先于系统变量。

  • 开启服务

  • 查看80端口是否启用

  • 在本机上输入127.0.0.1查看是否能够提供http服务,显示出页面后说明服务成功启动

  • 此时的页面只能是本地访问,要相对外提供服务要把防火墙关闭

  • 使用其他电脑打开页面验证服务没问题


二、一键部署脚本

此脚本适用于centos6与centos7。链接:http://pan.baidu.com/s/1gfu0qiv 密码:j2qf

[root@centos7 httpd]# cat install.sh
#!/bin/bash
# -------------+--------------------
# * Filename : install.sh
# * Revision : 2.0
# * Date : 2017-08-05
# * Author : Aubin
# * Description : install httpd
# * www.shuaiguoxia.com
# -------------+---------------------
rm -rf /var/run/yum.pid #mkdir
mkdir /etc/yum.repos.d/back/ #back default repo
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/back #new repo
cat > /etc/yum.repos.d/aubin.repo <<end
[aubin]
name=aubin
baseurl=http://mirrors.sohu.com/centos/\$releasever/os/\$basearch
enable=1
gpgcheck=0
end #remove old httpd
yum remove httpd -y #install Package
yum groupinstall "Development tools" -y
yum install apr-devel.x86_64 apr-util-devel.x86_64 openssl-devel -y #judge version
ver=`cat /etc/centos-release | grep [[:digit:]] -o|head -1` if [ $ver -eq 6 ]
then
tar xf httpd-2.2.34.tar.bz2
cd ./httpd-2.2.34
./configure --prefix=/app/httpd22/ --sysconfdir=/etc/httpd22/ --enable-ssl
make && make install
/app/httpd22/bin/apachectl start
echo 'export PATH=/app/httpd22/bin:$PATH' > /etc/profile.d/httpd22.sh
. /etc/profile.d/httpd22.sh
echo "MANPATH /app/httpd22/man" >> /etc/man.config
else
tar xf httpd-2.4.27.tar.bz2
cd ./httpd-2.4.27
./configure --prefix=/app/httpd24/ --sysconfdir=/etc/httpd24/ --enable-ssl
make && make install
/app/httpd24/bin/apachectl start
echo 'export PATH=/app/httpd24/bin:$PATH' > /etc/profile.d/httpd24.sh
. /etc/profile.d/httpd24.sh
echo "MANPATH /app/httpd24/man" >> /etc/man_db.conf
fi echo "Installation Complete !! Ctrl+c exit music" play ./music.wav &>/dev/null

源码编译安装Apache-附一键部署脚本的更多相关文章

  1. 源码编译安装Apache/2.4.37-------踩了无数坑,重装了十几次服务器才会的,不容易啊!

    1.先进入/usr/local/中创建三个文件夹 apr apr-util apache cd /usr/local目录 mkdir apr mkdir apr-util mkdir apache 2 ...

  2. linux 源码编译安装apache

    cc1 是c语言的编译器.

  3. Shell脚本一键部署——源码编译安装MySQL及自动补全工具

    Shell脚本一键部署--源码编译安装MySQL及自动补全工具 编译安装MySQL 1.软件包 Mysql安装包 将安装包拖至/opt目录下,编辑一个脚本文件,将以下内容复制进去,然后source或者 ...

  4. WordPress安装篇(5):源码编译安装LNMP并部署WordPress

    与YUM方式安装相比,源码编译安装方式更灵活,安装过程中能自定义功能和参数,特别是在批量部署服务器又要求软件版本及配置一致时,源码编译安装的优势很明显.本文介绍如何通过源码编译方式安装Nginx1.1 ...

  5. zstack源码编译安装(1.7.x版本)

    图片没粘贴过来,请看本人gitbook吧https://www.gitbook.com/book/jingtyu/how-to-learn-zstack-code 运行环境 zstack的安装方式有很 ...

  6. Httpd服务进阶知识-LAMP源码编译安装

    Httpd服务进阶知识-LAMP源码编译安装 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 想必大家都知道,动态资源交给fastcgi程序处理,静态资源依旧由httpd服务器处理  ...

  7. zabbix源码编译安装以及添加第一台host监控

    基础准备 硬件需求 数据库需求   软件需求 其他软件需求 安装 安装方式 source code 编译好的二进制包 rpm或者deb 源码编译安装部署zabbix以及附件 前提准备 最小化安装操作系 ...

  8. Centos7.X 源码编译安装subversion svn1.8.x

    说明:SVN(subversion)的运行方式有两种:一种是基于Apache的http.https网页访问形式:还有一种是基于svnserve的独立服务器模式.SVN的数据存储方式也有两种:一种是在B ...

  9. centos 6.5源码编译安装subversion 1.8.10

    一.简介 CentOS 6.5的yum源可以安装的SVN客户端版本太低了,1.6.11,所以需要升级到1.8.10,而官网有没有找到1.8.10的安装包,只能选择源码编译安装. 二.安装步骤 参考官网 ...

  10. Linux系统 - 源码编译安装Nginx

    什么是Nginx? Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器,在高连接并发的情况下N ...

随机推荐

  1. weex 启动 android 模拟器(mac环境)

    一.android studio和android sdk下载 1.android studio下载并安装https://developer.android.com/studio/index.html ...

  2. golang变量作用域问题-避免使用全局变量

    最近遇到了一个变量作用域的问题,一个比较低级的问题,可能作为一个熟手不应该犯这样的低级错误,但是golang的语法特点可能让你稍微不注意就踩坑,嘿嘿. 变量作用域 全局变量的作用域是整个包,局部变量的 ...

  3. google的grpc在golang中的使用

    GRPC是google开源的一个高性能.跨语言的RPC框架,基于HTTP2协议,基于protobuf 3.x,基于Netty 4.x. 前面写过一篇golang标准库的rpc包的用法,这篇文章接着讲一 ...

  4. execl列数据成等差递增递减

    如上图若想以10,20,30...这样递增: 1).首先需选中10,20所在的单元格,鼠标移至20所在的单元格右下角 2).此时会出现一个十字"十"符号,点击直向下拖动至某个地方, ...

  5. [C#] 获取计算机内部信息 - ComputerInfoHelper

    获取计算机内部信息 - ComputerInfoHelper 电脑有许多信息,如名称.CPU 和硬盘容量等,整理一个 Helper 来获取,下面目前只整理了一个方法,获取其它信息的方法类似. 一.代码 ...

  6. 树莓派小车By 树莓派爱好者ITJoker(通过C socket通信实现树莓派视频小车)(二)

    前面的方法可以参照(一)来配置GPIO口. 下面是代码...仅供参考,转载请注明出处. 1.  先输入以下指令,再复制代码,Ctrl+X  输入Y  回车  保存. sudo nano start.c ...

  7. Spring MVC执行的流程

    1.Spring MVC应用的开发步骤 a.在web.xml文件中定义前端控制器DispatcherServlet来拦截用户请求.由于Web应用是基于请求/响应架构的应用,所以 不管哪个MVC Web ...

  8. java类加载时执行顺序

    源代码 class HelloA { public HelloA() { System.out.print("A"); } { System.out.print("B&q ...

  9. bzoj 3451: Tyvj1953 Normal [fft 点分治 期望]

    3451: Tyvj1953 Normal 题意: N 个点的树,点分治时等概率地随机选点,代价为当前连通块的顶点数量,求代价的期望值 百年难遇的点分治一遍AC!!! 今天又去翻了一下<具体数学 ...

  10. HDU 4333 Revolving Digits [扩展KMP]【学习笔记】

    题意:给一个数字,每一次把它的最后一位拿到最前面,一直那样下去,分别求形成的数字小于,等于和大于原来数的个数. SAM乱搞失败 当然要先变SS了 然后考虑每个后缀前长为n个字符,把它跟S比较就行了 如 ...