首页 > 代码库 > apache源码包安装过程记录

apache源码包安装过程记录

1.下载apache源码包

 
http://www.apache.org/ 
apache官网,包含非常多软件
 
找到apache软件
http://httpd.apache.org/
 
选定要下载的源码包   复制下载的url
http://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.25.tar.bz2
 
进入linux的/usr/local/src 
wget http://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.25.tar.bz2
等待下载完成
 
解压
tar -jxf httpd-2.4.25.tar.bz2
 
移动到安装目录 
mv httpd-2.4.25  /usr/local/apache2
 
 
2.安装apache
查看源码包INSTALL文件
 
  1. $ ./configure --prefix=PREFIX
  2.      $ make
  3.      $ make install
  4.      $ PREFIX/bin/apachectl start
指定安装目录 /usr/local/apache2/apache 
 
./configure --prefix=/usr/local/apache2/apache 
进行安装环境检查
结果报错
cannot find APR
 
apr 是apache 运行需要的一个库
 
3.安装apr
下载也在apache网站
http://apr.apache.org/
 
都安装在/usr/local/apache2 
 
 
4.安装apr-util
 
再次安装apache  
报错 
cannot find APR-UTIL
 
跟apr下载是一个页面
安装  安装时指定 安装目录和apr安装目录
./configure --prefix=/usr/local/apache2/apr-util  --with-apr=/usr/local/apache2/apr
注意:apr-util 安装是否成功。
我第一次就没有安装成功,在安装Apache的时候报错  
cannot find lib    libaprutil-1.la  
在apr-util安装目录下果然没找到该文件,删了重装了一边apr-util,才看到该文件
 
5.安装pcre
继续安装apache ,报错  cannot find pcre-config
rpm -q pcre  
可以看到已经安装了pcre 啊,
其实这里安装的是二进制包 ,不是开发包,
yum -y install pcre-devel.x86_64
安装pcre开发包
 
6.最终安装apache 
 
./configure --prefix=/usr/local/apache2/apache  --with-apr=/usr/local/apache2/apr-1.5.2 --with-apr-util=/usr/local/apache2/apr-util-1.5.4
 
make 
 
make install
 
查看 /usr/local/apache2/apache下面,已经生成了安装文件
 
7.启动apache 
./usr/local/apache2/apache/bin/apachectl start
 
打开浏览器  127.0.0.1    可以看到 it works!
 或者执行
netstat -tln
看到80端口开始监听了,
 
说明安装成功
 
下面可以配置apache 了
 
 
总结:
看似简单的一个源码包安装过程,折腾了2个多小时,可见凡事一定不要眼高手低,做过才知道
 
 
 
 
 
 
 
<style>html,body { font-size: 15px } body { font-family: Helvetica, "Hiragino Sans GB", "微软雅黑", "Microsoft YaHei UI", SimSun, SimHei, arial, sans-serif; line-height: 1.6; margin: 0; padding: 1.33rem 1rem } h1,h2,h3,h4,h5,h6 { margin: 1.33rem 0 0.667rem; padding: 0; font-weight: bold } h1 { font-size: 1.4rem } h2 { font-size: 1.33rem } h3 { font-size: 1.2rem } h4 { font-size: 1.13rem } h5 { font-size: 1rem } h6 { font-size: 1rem; color: #777777; margin: 1rem 0 } div,p,ul,ol,dl,li { margin: 0 } blockquote,table,pre,code { margin: 8px 0 } ul,ol { padding-left: 2.13rem } blockquote { padding: 0 0.8rem } blockquote>:first-child { margin-top: 0 } blockquote>:last-child { margin-bottom: 0 } img { border: 0; max-width: 100%; height: auto !important; margin: 2px 0 } table { border-collapse: collapse; border: 1px solid #bbbbbb } td,th { padding: 4px 8px; border-collapse: collapse; border: 1px solid #bbbbbb }</style> <style>html,body { font-size: 15px } body { font-family: Helvetica, "Hiragino Sans GB", 微软雅黑, "Microsoft YaHei UI", SimSun, SimHei, arial, sans-serif; line-height: 1.6; color: ; background-color: ; margin: 0; padding: 1.33rem 1rem } img { max-width: 100% }</style> <style>html { height: 100% } body { min-height: 100% } a { } .wiz-img-resize-handle { position: absolute; z-index: 1000; border: 1px solid black; background-color: white } .wiz-img-resize-handle { width: 5px; height: 5px } .wiz-img-resize-handle.lt { cursor: nw-resize } .wiz-img-resize-handle.tm { cursor: n-resize } .wiz-img-resize-handle.rt { cursor: ne-resize } .wiz-img-resize-handle.lm { cursor: w-resize } .wiz-img-resize-handle.rm { cursor: e-resize } .wiz-img-resize-handle.lb { cursor: sw-resize } .wiz-img-resize-handle.bm { cursor: s-resize } .wiz-img-resize-handle.rb { cursor: se-resize } .wiz-table-body.wiz-table-moving *,.wiz-table-body.wiz-table-moving *::before,.wiz-table-body.wiz-table-moving *::after { cursor: default !important } td,th { position: relative } #wiz-table-range-border { display: none; width: 0; height: 0; position: absolute; top: 0; left: 0; z-index: 105 } #wiz-table-col-line,#wiz-table-row-line { display: none; background-color: #448aff; position: absolute; z-index: 120 } #wiz-table-col-line { width: 1px; cursor: col-resize } #wiz-table-row-line { height: 1px; cursor: row-resize } #wiz-table-range-border_start,#wiz-table-range-border_range { display: none; width: 0; height: 0; position: absolute } #wiz-table-range-border_start_top,#wiz-table-range-border_range_top { height: 2px; background-color: #448aff; position: absolute; top: 0; left: 0 } #wiz-table-range-border_range_top { height: 1px } #wiz-table-range-border_start_right,#wiz-table-range-border_range_right { width: 2px; background-color: #448aff; position: absolute; top: 0 } #wiz-table-range-border_range_right { width: 1px } #wiz-table-range-border_start_bottom,#wiz-table-range-border_range_bottom { height: 2px; background-color: #448aff; position: absolute; top: 0 } #wiz-table-range-border_range_bottom { height: 1px } #wiz-table-range-border_start_left,#wiz-table-range-border_range_left { width: 2px; background-color: #448aff; position: absolute; top: 0; left: 0 } #wiz-table-range-border_range_left { width: 1px } #wiz-table-range-border_start_dot,#wiz-table-range-border_range_dot { width: 5px; height: 5px; border: 2px solid rgb(255, 255, 255); background-color: #448aff; cursor: crosshair; position: absolute; z-index: 110 } .wiz-table-tools { display: block; background-color: #fff; position: absolute; left: 0px; border: 1px solid #ddd; z-index: 130 } .wiz-table-tools ul { list-style: none; padding: 0 } .wiz-table-tools .wiz-table-menu-item { position: relative; float: left; margin: 5px 2px 5px 8px } .wiz-table-tools .wiz-table-menu-item .wiz-table-menu-button { font-size: 15px; width: 20px; height: 20px; line-height: 20px; cursor: pointer; position: relative } .wiz-table-tools i.editor-icon { font-size: 15px; color: #455a64 } .wiz-table-tools .wiz-table-menu-item .wiz-table-menu-button i#wiz-menu-bg-demo { position: absolute; top: 1px; left: 0 } .wiz-table-tools .wiz-table-menu-sub { position: absolute; display: none; width: 125px; padding: 5px 0; background: #fff; border: 1px solid #E0E0E0; top: 28px; left: -9px } .wiz-table-tools .wiz-table-menu-sub>div { font-size: 15px } .wiz-table-tools .wiz-table-menu-item.active .wiz-table-menu-sub { display: block } .wiz-table-tools .wiz-table-menu-sub::before,.wiz-table-tools .wiz-table-menu-sub::after { position: absolute; content: " "; border-style: solid; border-color: transparent; border-bottom-color: #cccccc; left: 22px; margin-left: -14px; top: -8px; border-width: 0 8px 8px 8px; z-index: 10 } .wiz-table-tools .wiz-table-menu-sub::after { border-bottom-color: #ffffff; top: -7px } .wiz-table-tools .wiz-table-menu-sub-item { padding: 4px 12px; font-size: 14px } .wiz-table-tools .wiz-table-menu-sub-item.split { border-top: 1px solid #E0E0E0 } .wiz-table-tools .wiz-table-menu-sub-item:hover { background-color: #ececec } .wiz-table-tools .wiz-table-menu-sub-item.disabled { color: #bbbbbb; cursor: default } .wiz-table-tools .wiz-table-menu-sub-item.disabled:hover { background-color: transparent } .wiz-table-tools .wiz-table-menu-item.wiz-table-cell-bg:hover .wiz-table-color-pad { display: block } .wiz-table-tools .wiz-table-color-pad { display: none; padding: 10px; width: 85px; height: 88px; background-color: #fff; cursor: default } .wiz-table-tools .wiz-table-color-pad>div { font-size: 15px } .wiz-table-tools .wiz-table-color-pad .wiz-table-color-pad-item { display: inline-block; width: 15px; height: 15px; margin-right: 9px; position: relative } .wiz-table-tools .wiz-table-color-pad .wiz-table-color-pad-item i.pad-demo { position: absolute; top: 3px; left: 0 } .wiz-table-tools .wiz-table-color-pad .wiz-table-color-pad-item .icon-oblique_line { color: #cc0000 } .wiz-table-tools .wiz-table-color-pad .wiz-table-color-pad-item:last-child { margin-right: 0 } .wiz-table-tools .wiz-table-color-pad .wiz-table-color-pad-item.active i.editor-icon.icon-box { color: #448aff } .wiz-table-tools .wiz-table-cell-align { display: none; padding: 10px; width: 85px; height: 65px; background-color: #fff; cursor: default } .wiz-table-tools .wiz-table-cell-align .wiz-table-cell-align-item { display: inline-block; width: 15px; height: 15px; margin-right: 9px; position: relative } .wiz-table-tools .wiz-table-cell-align .wiz-table-cell-align-item:last-child { margin-right: 0 } .wiz-table-tools .wiz-table-cell-align .wiz-table-cell-align-item i.valign { position: absolute; top: 3px; left: 0; color: #d2d2d2 } .wiz-table-tools .wiz-table-cell-align-item.active i.editor-icon.valign { color: #a1c4ff } .wiz-table-tools .wiz-table-cell-align-item.active i.editor-icon.icon-box,.wiz-table-tools .wiz-table-cell-align-item.active i.editor-icon.align { color: #448aff } .wiz-table-tools .wiz-table-color-pad .wiz-table-color-pad-item:last-child,.wiz-table-tools .wiz-table-cell-align .wiz-table-cell-align-item:last-child { margin-right: 0 } th.wiz-selected-cell-multi,td.wiz-selected-cell-multi { background: rgba(0,102,255,.05) } th::before,td::before,#wiz-table-col-line::before,#wiz-table-range-border_start_right::before,#wiz-table-range-border_range_right::before { content: " "; position: absolute; top: 0; bottom: 0; right: -5px; width: 9px; cursor: col-resize; background: transparent; z-index: 100 } th::after,td::after,#wiz-table-row-line::before,#wiz-table-range-border_start_bottom::before,#wiz-table-range-border_range_bottom::before { content: " "; position: absolute; left: 0; right: 0; bottom: -5px; height: 9px; cursor: row-resize; background: transparent; z-index: 100 } .wiz-table-container { } .wiz-table-body { position: relative; padding: 0 0 10px } .wiz-table-body table { margin: 0; outline: none } td,th { height: 28px; outline: none } body pre.prettyprint { padding: 0 } body pre.prettyprint code { white-space: pre } body pre.prettyprint.linenums { overflow: auto } body pre.prettyprint.linenums ol.linenums { padding: 10px 10px 10px 40px !important }</style>

apache源码包安装过程记录