apache编译安装(Configure)方法问题

发表于:2007-07-04来源:作者:点击数: 标签:
小弟最近重新编译apache,利用以前编译时生成的文件Configuration.apaci,命令如下:./src/Configure-fileConfiguration.apaci,但是因为在生成这个Configuration.apaci时并没有保存--prefix参数信息(虽然我当时编译时有这个参数),导致在make后进行makeinst

小弟最近重新编译apache,利用以前编译时生成的文件Configuration.apaci,命令如下:./src/Configure -file Configuration.apaci,但是因为在生成这个   Configuration.apaci时并没有保存--prefix 参数信息(虽然我当时编译时有这个参数),导致在make后进行make install时没有办法改变安装路径!哪位大侠有这样编译的经验,望请给予指点小弟将不胜感激!

 bjchenxu 回复于:2003-09-18 16:18:51
运行./config.status

如果要改什么参数,在config.status文件中改

 ssimyili 回复于:2003-09-18 17:06:17
请问,你说的是用./src/Configure 命令编译的吗?因为我没有用configure编译,所以,也就没有生成最新的config.status,所以,更改就没有用的!

 bjchenxu 回复于:2003-09-18 17:36:39
1. 要想保留上次的配置,应该备份./config.status文件,而非./src/Configuration.apaci文件

2. 问你一下,上次如果你不用./configure,你如何能够生成./src/Configuration.apaci文件?既然生成了该文件,那么必然会生成./config.status文件

3. 我们分析一下./configure的过程
a. 生成./Makefile文件,后面你的make和make install都用这个文件,所以最后的prefix等目录应该在这个文件中反映,注意,只有./configure可以生成这个文件,你的./src/Configure -file ./src/Configuration.apaci是无法生成的
b. 生成./src/apaci
c. 生成./src/Configuration.apaci
d. ./src/Configure -file ./src/Configuration.apaci生成下层的Makefile

4. 就算我可以告诉你可以修改./Makefile文件,可是你根本就没有这个文件呀,另外,你还需要必须修改./src/apaci文件

APACI方式是Apache小组推荐的一种先进的配置编译方式,你采用的是旧式的pre-1.3之前的方式,那种方式是:先手工编辑Configuration.tmpl文件,然后运行./configure,最后运行make。过程中需要定义各种标志。

 ssimyili 回复于:2003-09-18 17:51:27
因为./src/apaci文件不是很熟悉的那种显示方式!所以我改起来不老练,比如要添加参数 --prefix=path 在那个文件怎么添加能给个详细的解释吗!谢谢了!

 喜子 回复于:2003-09-19 09:07:33
./configure  --prefix=/usr/local/apache(改为你向安装的路径)

     make;

   make install 就会安装到你修改的路径

 ssimyili 回复于:2003-09-19 14:14:14
[quote:a5bb5806dd="bjchenxu"]1. 要想保留上次的配置,应该备份./config.status文件,而非./src/Configuration.apaci文件

2. 问你一下,上次如果你不用./configure,你如何能够生成./src/Configuration.apaci文件?既然生成了该文件,那么必然..........[/quote:a5bb5806dd]     

首先多谢楼上这位大侠的悉心指点!./configure编译后即可生成src/Configuration.apaci,该文件用于保存apache配置!小弟在该文件只是找不到关于--prefix的参数信息,其它的到是都有!所以才会有该问题的!现在只是想试试src/Configuration编译方法,也就是为了升级方便!

楼上这位大侠想必对apache十分的熟悉,顺便问一句有过在正是升级服务器上升级apache的经验,假设,该服务器以正常工作,类似装有什么php、mysql等等七七八八的东西!如何可以保证安全快速的升级apache呢?

再谢!

 bjchenxu 回复于:2003-09-19 14:22:32
等你好几天了,你终于来了,呵呵

1. config.status才能保存所有的配置,一个src/Configuration.apaci是无法全部保存的,注意layout目录等信息这里是没有的
2. 最快的升级方式?
如果采用编译方式的话,方法如下:
a. 在本地设置一台一样的服务器
b. 将php/mysql/apache编译安装在/usr/local目录下,分别为php/mysql/apache目录
c. 在本地编译升级,然后将3个目录目录直接tar打包到生产机上

停机时间,肯定不超过1分钟 

忘了说一句,如果经常使用apache,有一本书是必备的,我在一句话的图书介绍中详细介绍了,你可以看看

 ssimyili 回复于:2003-09-19 15:05:00
呵呵,我一直在呀!昨天下午回复了,以为提交成功了,结果今天才知道回复失败!

不愧是大侠,这种问题在你的眼里的确是很easy的,这种升级方法,小弟也有想到过,但是无奈没有升级经验没有100%的把握是不敢随便动的,至少我还有如下担心没有去掉:

先假设测试服务器与生产服务器是环境完全一样的,mysql一般也可以先不比考虑,因为它毕竟相对很是独立。

1、apache一般不可能是个光杆司令的,是少有配个ssl吧,而这东东一般也是跟apache版本不断升级的,这就是说至少应该再加一个目录ssl吧,apache的完全安装路径在编译安装时应该有保存吧?位置?
2、php一般都是采取dso安装的,这样就限定在某一个目录下,包括配置文件,如何可以用新的完全去覆盖老版本的呢?
3、php安装时一般至少也都有支持gd吧,这东西也是异常的讨厌,安装文件胡乱放在了一些地方,这样又是很不好确定,到底哪些是旧的,总不可能一个一个去找吧!

以上问题,如果在大侠推荐的那本书《linux Apache web Server 管理指南》都有的话,就不麻烦大侠了,告我一声就好!

总是提一堆对你老说弱智的问题,让我实在有些不好意思!

再谢!

 bjchenxu 回复于:2003-09-19 15:26:03
1. 算你问中了,apache中除了自己写模块,就数这个宝宝又常用又难弄,不过该书中介绍得太详细了,有专门的一章讲这个,你看看吧
2. php只有一个.so+一个php.ini,这个怎么升级不用我说了,拷贝呀!
3. 不安装gd则已,安装的话,就只能/usr/local/gd一起打包了

gd在书里面没有详细说明,其他的讲得很详细的
gd主要是手工生成图形吧,这个主要是用于输入验证码

说实在的,要把apache玩溜,还真得看这本书,不过网上没有ebook,得自己买

你的问题看起来基础,要弄得自然,解决得完美,还是比较费事的

 ssimyili 回复于:2003-09-19 16:43:12
呵呵,没有电子版的没关系,好书还是看传统的纸的比较方便!

另外,对于php带gd的,一般都没有指定安装路径的,都是默认的编译的,所以,那些东西一般都放在了,/usr/local/include, /usr/local/lib,在/usr/include/下面经常还有几个文件!这个东西是比较麻烦的呢!不过,多找找吧!我也是者都指定安装路径看看怎样,可以的话当然是最好了啦!起码升级方便些了啦!

多谢大侠指点了啦!以后有什么问题估计还要麻烦了啦!呵呵!

原文转自:http://www.ltesting.net