Linux和Solaris建立Apache虚拟根环境
2007-03-10 00:00:00 来源:WEB开发网Solaris 例子
对Web目录树进行虚拟根环境化的solaris的例子与Linux的例子十分相似。当然,如果你没有安装GNU开发环境,solaris的例子就不可能像Linux例子那样容易。附加的注释,使用工具ldd来发掘必要的共享库。 在这个例子中,用户有这样的提示:
root user:
ROOT#
ordinary user:
$
我基本上都是作为普通用户而不是root用户来编译和安装各种软件的。这有助于避免对文件系统(尤其是在使用不熟悉的软件时)造成的不必要的破坏。这也有助于在进行危险操作前给以警示,例如在已经安装的二进制文件上的“setuid"操作,以及在不寻常的地方安装文件的操作等危险操作前的警示。
在这个例子中,我作为用户soft:soft来进行编译和安装等操作。其实,只要保证软件的所有者的身份ID与Apache目录树用户的ID(在本例中我们用的是888)不同就可以了。Red Hat的缺省root环境中,有一个交互式的开关-I被加在命令cp、mv和rm上。如果你的root环境中没有这些设置,建议你最好将它加上。你可以检查下面的文件: ROOT# alias |grep '-i'
alias cp='cp -i'
alias mv='mv -i'
alias rm='rm -i'
你应当使你的配置尽量的简单——不要安装那些用不到或根本不必要的模块。一般说来,一个标准的non-DSO(非动态共享对象)Apache,在安装一个perl,对大多数人都是足够的。
关于DSO和mod-ssl需要注意的地方:
如果你打算把任何东西都按照DSO模版进行编译,那你首先要建立mod-ssl,然后你确实要按照下面的顺序建立自己的Apache目录树。Mod-ssl会明显的修改Apache 建立的目录树,据我的经验,在使用我们刚才提到的软件版本的前提下,下面的顺序是做起来最简单的顺序:
1、建立Apache.
2、在Apache中建立和增加mod-ssl.
3、在Apache中建立和增加php 和mod-perl.
4、你应该在适当的地方记录下来你是如何编译你的目录树的,以便再做时参考。(你可以将其打印出来,并加上注释)
安装了各种软件之后,最终的虚拟根环境化的目录树有23MB,其中包含了8MB的共享库和perl。下面是基于DSO安装的文件的总结(以KB表示):
ROOT# pwd
/www
ROOT# du -s .
22737 .
ROOT# du -s *
6832apache
0 bin
1 dev
7 etc
6679lib
1 tmp
9215usr
1 webhome
ROOT# du -s apache /*
600 apache /bin
3 apache /cgi-bin
125 apache /conf
1560apache /htdocs
133 apache /icons
392 apache /include
3925apache /libexec
64 apache /man
29 apache /var
ROOT# du -s usr/*
8410usr/Local
336 usr/bin
340 usr/lib
128 usr/share
更多精彩
赞助商链接