前几天,我在solaris 10上整合apache与php,其间遇到一些问题,很有代表性,在这里把相关的过程及处理措施记录下来,希望对大家有所帮助。
与solaris 9不同的是,solaris 10已经默认安装GNU开发工具(GCC,make等)。但默认的环境变量没有把相关的路径设置进去—看路径是否被设置进去,只要执行不带选项和参数的命令gcc就知道了—用find搜索文件make和gcc,然后把路径写进文件/etc/profile,我的系统的/etc/profile路径设置如下所示:
export PATH=$PATH:/usr/ccs/bin:/usr/sfw/bin
改完后执行source /etc/profile就可以了。鉴于solaris 10自带的tar不太方便,用GNU tar代替它,其过程如下:
gunzip -d tar-1.16.tar.gz tar xvf tar-1.16.tar cd tar-1.16 ./configure -prefix=/usr/local/gnutar //指定目录,否则可能报错 make make install //把包安装在目录/usr/local/gnutar了 mv /usr/sbin/tar /usr/sbin/tar.orig //把系统自带的vi移动到一边,
以便万一发生意外能够恢复回来// ln –s /usr/local/gnutar/bin/tar /usr/sbin/tar
接下来安装apache,其过程如下:
cd /root tar zxvf httpd-2.2.0.tar.gz cd httpd-2.2.0 ./configure –prefix=/usr/local/apache2 –enable-so make make instal
察看是否生成目录/usr/local/apache2便知apache是否被正确安装。
安装php,其过程如下:
cd /root tar zxvf php-5.2.0.tar.gz cd php-5.2.0 ./configure -prefix=/usr/local/php -with-apxs2
=/usr/local/apache2/bin/apxs ………
这个过程不能正常运行下去,出现下面的报错信息:
Configuring extensions checking whether to enable LIBXML support... yes checking libxml2 install dir... no checking for xml2-config path... /usr/bin/xml2-config configure: error: libxml2 version 2.6.11 or greater required.
这表明系统自带的libxml2版本低,需要2.6.11以上的版本。有2种办法解决这个问题:升级libxml2和重新安装一个libxml2。在运行业务的solaris 环境,升级是一个十分冒险的办法,我们这里有很多程序员胡乱升级软件包把系统弄崩溃的先例,所以强烈建议象我一样保守,重新安装一个新的libxml2。只要我们在源码安装过程中指定了安装目录,安装了新的libxml2后不会对系统产生任何危害,当然占据那一点磁盘空间是微不足道的了。下面是安装一个新的 libxml的步骤:
cd /root tar zxvf libxml2-2.6.26.tar.gz ./configure –prefix=/usr/local/libxml make make install