linux源码下载阿帕奇,Ubuntu 12.04下源码安装Apache

环境:Ubuntu 12.04

【简单安装】

一般第一次安装Apache都较为顺利。

1. 下载并解压

root@ubuntu:/home/qy/share#tar zxvf httpd-2.2.22.tar.gz

root@ubuntu:/home/qy/share#cd httpd-2.2.22

在http-2.2.22里有文件README和INSTALL,用more命令可以阅读。

2. 配置

root@ubuntu:/home/qy/share/httpd-2.2.22#./configure --prefix=/usr/local/apache

--prefix参数指定了将要安装到的目录。此时/usr/local下还没有该目录,make install后才会出现。

注意:Apache在安装时不会检查参数是否正确,错误的参数会直接被丢弃,不会报告给用户。所以使用echo $?命令检查是否有错误,当输出结果为0时表示没有错误。

3. 编译

root@ubuntu:/home/qy/share/httpd-2.2.22#make

4. 安装

root@ubuntu:/home/qy/share/httpd-2.2.22#make install

5. 启动服务器

root@ubuntu:/home/qy/share/httpd-2.2.22#cd /usr/local/apache/bin

root@ubuntu:/usr/local/apache/bin#./apachectl start

为了以后使用方便,可以把启动文件apachectl复制到/sbin下,以后直接apachectl start启动。

#vi /etc/rc.local

增加一行 /sbin/apachectl start

6. 验证Apache是否工作

此时,服务器端窗口应该显示:

7beeb4331bf2827d15107d5558275862.png

#ps -e|grep httpd

52fd7426eb1e1448fcbef27b7fe5f9ea.png

在客户端浏览器输入服务器的IP地址(或者http://localhost),IE应该显示:It works!画面。

Ubuntu重启后,需要重启Apache: apachectl start

停止服务器:  ./apachectl stop

重启服务器:  ./apachectl graceful  或   ./apachectl restarted

通常,第一次安装Apache没有什么问题,但以后安装,如果没有apr,apr-util,pcre,在执行./configure的配置过程中可能遇到的错误:

make[2]: *** [install] Error 1

make[2]: Leaving directory `/tmp/httpd-2.2.22/srclib/apr-util'

make[1]: *** [install-recursive] Error 1

make[1]: Leaving directory `/tmp/httpd-2.2.22/srclib'

make: *** [install-recursive] Error 1

Apache2.0.x与Apache2.2.x在apr上有本质的区别,前者为依赖公用apr,后者依赖于自身的apr。2.0.x的编译基本上没有apr方面的问题,除非,在编译前,安装了非2.0.x所需的apr,如果是这样,则需要将已经安装的apr去除,然后再编译。HTTP Sever2.2.22修复了不少重要安全问题,包含APR(Apache Portable Runtime)1.4.5和APR-util(Apache Utility Library)1.4.2。因此不需要像网上其它教程那样从外部找源码安装apr和apr-util。将安装前已存在于系统中的apr去除后,再编译apache2.2.x自身srclib里的apr和apr-util。其它操作系统这样解决就没问题了,但是Ubuntu不太一样。安装完apr和apr-util后,./configure配置Apache时可能会出现下面错误:

configure: error: Cannot use an external APR with the bundled APR-util

configure: error: APR version 1.2.0 or later is required

srclib目录中有apr,apr-util,pcre三个源码包,其中pcre是不可用的,编译不出来,有如下错误:

libtool: compile: unrecognized option `-DHAVE_CONFIG_H'

libtool: compile: Try `libtool --help' for more information.

make: *** [pcrecpp.lo] Error 1

ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/上下载的pcre-8.30也不可用。不妨用make check命令查看下错误出在什么地方。一般怀疑是g++版本低,更新即可。我没有这样做,而是直接用apt-get install libpcre3-dev安装了pcre后,再安装apache就没问题了。0b1331709591d260c1c78e86d0c51c18.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/489551.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

latex自动生成中文目录_texpad: 中文输出+自动参考文献生成(bib+bst)

写在前面:本文仅记录自己在家无聊,接触了下LaTeX。本文是在MAC下使用TexpadMacTeX,进行LaTeX编辑,a.输出中文问题,此问题参考自:texpad中如何使用中文?(mac OS) - Peregrinatio的回答…

github里的默认域_恕我直言!你对Python里的import一无所知

写 Python 通常我们会怎样导包?可能大部分情况下都是用 import,但除了 import 你还会些什么呢?下面我们来介绍一些骚操作。1. 直接 import 人尽皆知的方法,直接导入即可import os与此类似的还有,不再细讲import ...一般…

ModelMapper 中高级使用 java

ModelMapper 是一个java对象自动映射的第三方架包,用起来很方便,配合阿里的frstjson可以极大简化后台代码。 但是ModelMapper 中文使用说明很少,官网http://modelmapper.org/的解释也很不明了所以我研究了好久。 ModelMapper modelMapper ne…

为何云原生在吞噬世界 ?

来源:云头条长话短说,本文的目的是帮助你了解云原生的功能及带来的业务效益,并探讨准备迁移到这种新型计算模式的企业面临的种种选择和陷阱。“计算机革命已过去了60年,离微处理器的发明已有40年,现代互联网兴起至今已…

Linux as4开启telnet,Red hat AS4开启telnet过程

这里写一个Red hat AS4开启telnet过程开启过程,按照以下步骤(4个步骤)就可以了:1、确定你的telnet服务打开没有:[root111 ~]# chkconfig --list|grep telnettelnet: offkrb5-telnet: off[root111 ~]#注意检查结果这里是关闭状态2、打开tel…

python修改静态html_Python 静态页面爬虫---urllib3库实现

1、生产请求urllib3库是通过PoolManager实例来生产请求的,由该实例处理与线程池的链接机线程安全的所有细节urllib3.request函数创建一个请求语法:http urllib3.PoolManager()rq http.request(method,url,headers{默认为None},fields{默认为None},**urlo…

xgboost算法_工业大数据:分析算法

一. 应用背景大数据分析模型的研究可以分为3个层次,即描述分析(探索历史数据并描述发生了什么)、预测分析(未来的概率和趋势)和规范分析(对未来的决策给出建议)。工业大数据分析的理论和技术研究仍处于起步阶段,主要应用场景如下:1. 预测性维…

GC之七--gc日志分析工具

性能测试排查定位问题,分析调优过程中,会遇到要分析gc日志,人肉分析gc日志有时比较困难,相关图形化或命令行工具可以有效地帮助辅助分析。 Gc日志参数 通过在tomcat启动脚本中添加相关参数生成gc日志 -verbose.gc开关可显示GC的操…

python爬虫网络库下载_Python3 DHT 网络磁力种子爬虫

Python3 DHT 网络磁力种子采集器😎 严肃的理论磁力链接现在我们使用迅雷等工具下载资源的时候,基本上都只需要一个叫做磁力链接的东西就可以了,非常方便。磁力定义磁力链接是对等网络中进行信息检索和下载文档的电脑程序。和基于“位置”连接…

postgresql修炼之道_PostgreSQL的TOAST技术

本文参考:PostgreSQL TOAST 技术理解《PostgreSQL修炼之道》一、TOAST是什么?TOAST是“The Oversized-Attribute Storage Technique”(超尺寸属性存储技术)的缩写,主要用于存储一个大字段的值。要理解TOAST&#xff0c…

3D器官和骨骼将使移植清单成为历史

来源:IEEE电气电子工程师学会对于患有慢性病或病情危重的患者,等待器官移植匹配的时间可能对生命生死攸关。根据美国卫生资源和服务管理局(Health Resources and Services Administration:https://www.organdonor.gov/statistics-…

11月25号站立会议

小组名称:飞天小女警 项目名称:礼物挑选小工具 小组成员:沈柏杉(组长)、程媛媛、杨钰宁、谭力铭 代码地址:HTTPS: https://git.coding.net/shenbaishan/GIFT.git SSH:gitgit.coding.net:shenbai…

linux 键盘过滤,linux – 需要拦截HID Keyboard事件(然后阻止它们)

我有一个RFID USB设备,注册为HID设备(A USB键盘或多或少).我正在寻找一种方法来捕获此输入,并在它碰到普通键盘事件处理程序(并将10位数的RFID代码输出到控制台)之前对其进行阻塞/过滤.我当然必须专门捕获这个设备,并且将真正的键盘输入单独留下(或传递给它).我最初的想法是在U…

鱼c论坛python课后作业_三日速成python?打工人,小心钱包,别当韭菜

随着人工智能的热度越来越高,许多非计算机专业的同学们也都纷纷投入到学习编程的道路上来。而Python,作为一种相对比较容易上手的语言,也越来越受欢迎。网络上各类网课层出不穷,各式广告令人眼花缭乱。某些课程甚至卖出“天价”&a…

Linux shell的输入输出

echo --echo命令可以显示文本行或变量,或者把字符串输入到文件 --echo [option] string-e 解析转义字符 例如:echo -e "nimenhao\nasfdsaf" 打印发生换行-n 回车不换行 详解:一般在命令行打印字符串,光标会…

区块链共识算法的发展现状与展望

来源:平行区块链摘 要 共识算法是区块链技术的核心要素, 也是近年来分布式系统研究的热点. 本文系统性地梳理和讨论了区块链发展过程中的 32 种重要共识算法, 介绍了传统分布式一致性算法以及分布式共识领域的里程碑式的重要研究和结论, 提出了区块链共识算法的一种…

python预测发展趋势_Python中的趋势“预测器”?

对于预测时间序列数据,我觉得最好的选择是LSTM,它是一种递归神经网络,非常适合于时间序列回归。在如果您不想深入研究神经网络的后端,我建议您使用Keras库,它是Tensorflow框架的包装器。在假设你有一个一维数组&#x…

iphone打字怎么换行_iPhone电池保养指南

虽然手机电池的使用寿命会随着用户的日常使用慢慢减少、但需要注意的是、一些不恰当的操作方法,会导致电池寿命快速下降。这时候会有人说,那我可以换电池呀虽然换电池之后,一开始确实还可以,但是随着不恰当的使用,又开…

vc2017 linux printf,C/C++中自定义信息输出——printf与宏的配合使用

在C/C中,提起“宏”多少有些皱眉,至少我在入门C时旁人好心提醒:尽可能地使用typedef与const常量定义来替代“宏”的使用:1. 类型宏定义#define HANLE void*//可以替换为:typedef void *HANLE;2. 常量定义#define MAX_L…

SVN需要忽略的文件类型

自己在用的,有问题的话欢迎指正,直接复制粘贴即可。(一般人我都不告诉他) *.lo,*.la,*.al,*.so,*.so.[0-9]*,*.pyc,*.pyo,*.rej,.*.swp,.DS_Store,*.xcscmblueprint,xcuserdata,*.xcuserdatad,*.xcuserstate,*.xcuserdata,xcschem…