前几天,我在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 |
这时我们再回来安装php
cd /root/php-5.2.0 ./configure -prefix=/usr/local/php5 -with-apxs2=/usr/local/apache2/bin/apxs -with-libxml-dir=/usr/local/libxml //配置很顺利的完成了 make make install |
最后一个步骤是配置和测试,实际上只需要修改apache的配置文件httpd.conf。由于在php的配置过程中使用了选项—with-apxs,因此会在htppd.conf文件中插入“LoadModule php5_module modules/libphp5.so”这一行,先检查一下看受否被自动写入;然后再手动插入行“AddType application/x-httpd-php .php .phtml”,注意:.php,.phtml前面各有一个空格,没有这个空格将不能正常解析php页面,这是一个很容易忽视的问题,请初学者留意。写一个最简单的测试文件index.php,包含“”,把它保存在apache根文档所在的目录(这里是/usr/local/apache/htdocs/index.php)。执行/usr/local/apache/bin/apachectl start启动apache守护进程,从浏览器输入http://IP/index.php测试,如果出现类似下面的页面,表明一切正常。
以GNU源码方式来安装软件,可使各种平台的操作方法基本一致,这对负责运营各种linux/unix的系统管理员来说,GNU源码是一种很好的选择。
![]() |
| 测试成功后出现画面 |
【相关文章】
|
|||
| · 网管系统介绍 · 网络管理系统如何支撑I.. · CISSP认证成长之路 · 51CTO国庆充电专题之好.. · 网络技术经典基础教程 · 51CTO主编推荐经典专题 · RAID——磁盘阵列基础 · 充电计划之热门IT认证.. |
· 51CTO技术自测 挑战自.. · AMD Phenom三核处理器.. · 国际文档格式标准开战 · 2007年互联网大会 · 我是黑客我怕谁——讲.. · ARP攻击防范与解决方案 · Solaris 10 配置管理 · Solaris基础知识入门 |
||
|
|||
| · Java基础教程 · VPN技术 · ARP攻击防范与解决方案 · SQL Server 2005全解 · SOA 面向服务架构 · SQL Server 2005全解 · Java编程开发手册 · RAID——磁盘阵列基础 |
· 三层交换技术专题 · SQL Server入门到精通 · Windows Server 2003企.. · Windows远程桌面应用 · C#技术开发指南 · VPN技术 · C#技术开发指南 · Solaris 10 配置管理 |
||
|
|||
| · ARP攻击防范与解决方案 · VPN技术 · SQL Server 2005全解 · Java基础教程 · SQL Server入门到精通 · SQL Server 2005全解 · SOA 面向服务架构 · Java编程开发手册 |
· C#技术开发指南 · 三层交换技术专题 · C#技术开发指南 · Windows远程桌面应用 · RAID——磁盘阵列基础 · Windows Server 2003企.. · 邮件服务器专题 · wimax技术与趋势 |
||
| ·DB2 Viper快速入门 ·DB2 9数据库的镜像分割与.. |
·将XML应用程序从DB2 8.x.. ·DB2 9中的pureXML:如何.. |
| ·服务器中的“傻瓜机”在.. ·盖茨也喜欢登录Youtube看.. |
· · |
| ·体验Windows Server 2008.. ·将超星图书转成PDF文档 |
·使用 Office Communicati.. ·VMware Workstation 6.01.. |
| ·强烈质疑“步行1公里就能.. ·国庆期间新闻回顾:微软.. |
·9月第3周回顾:微软和英.. ·9月第2周回顾:四核之战.. |
| · 华为、贝恩资本22亿美元.. · NGN:下一代网络 · 网络访问中断大排查 |
· 教你使用Anti ARP Sniff.. · 网络嗅探教程:使用Snif.. · 常见病毒手工清除方法大.. |
| · C++是垃圾语言?! · 2007年IT界七大抄袭事件 · Java实用开发全集 |
· 解析Ajax开发框架 走进A.. · 基于Google Maps与Ajax.. · 基于Google Maps与Ajax.. |
| · 热门 IT 培训认证官方资.. · Ubuntu 中文开源频道 · Solaris基础知识入门 |
· Google推出唯一硬件——.. · 硬盘之父获得诺贝尔物理.. · 理性面对四核服务器选购 |
| · 甲骨文Oracle 11g正式发.. · Oracle数据库开发之PL/S.. · Oracle数据库开发基础教.. |
· 硬盘之父获得诺贝尔物理.. · 存储2006,一个并购的大.. · IDC宣布浪潮蝉联存储市.. |