当前位置:中国星空学习网首页>Linux/DOS>Linux配置>正文  
solaris7+php4.0.2+gd1.8.3+sybase12.0+apache1.3 安装手册

 

j30B0j30B0j30B0
作者:yurt(蒙古包)
这份手册是我在Solaris7中文版环境下安装配置PHP和SYBASE数据库的心得体会, 整个安装过程总共花费了11天(从11月12号到22号)时间,可谓费尽周折。安装 期间我拜访了国内外无数的网站、BBS、MAILLIST和NEWSGROUP,请教过PHP函数 的作者和SYBASE公司的工程师。在众多热心人的帮助下,我终于把它搞定了,呵 呵。既然是大家的成果,我就不敢一人独享,所以把它写出来,来帮助那些需要 帮助的人。如果我写的这篇文章帮您解决了令您头疼的问题,能不能给我发一张 贺卡,我一定会和您一样高兴的^Y^。
我的E-Mail是 yurt@163.com , yurt@21cn.com 。

=======================所需软件=======================
sybase 12.0 for solaris 光盘介质
(下列软件下载地点http://www.sunfreeware.com/programlistsparc7.html )
gzip-1.3-sol7-sparc-local.gz (必须)
gcc-2.8.1-sol7-sparc-local.gz (必须)
libstdc++-2.8.1.1-sol7-sparc-local.gz (必须)
make-3.78.1-sol7-sparc-local.gz (可不安装)
gd-1.8.3.tar.gz (可选。如不安装GD库,不需下载和GD相关的软件包)
php-4.0.2.tar.gz (在http://www.php.net/downloads.php下载)
apache_1.3.14.tar.gz (在http://httpd.apache.org/dist/ 下载)
zlib-1.1.3-sol7-sparc-local.gz (安装GD库需要)
jpeg-6b-sol7-sparc-local.gz (和GD库相关)
libpng-1.0.2-sol7-sparc-local.gz (安装GD库需要)
xpm-3.4k-sol7-sparc-local.gz (和GD库相关)
把所有文件放在/export/home目录下。
另外再建一个目录,用于存放编译好的二进制文件:
#mkdir /opt/soft
-------------------------------------------------
******************软件解压及预安装***********************
由于solaris7的tar不认识-z选项,可先用WINZIP将gzip-1.3-sol7-sparc-local.gz
解压成gzip-1.3-sol7-sparc-local再ftp到/export/home目录下进行安装。
#cd /export/home
#pkgadd -d gzip-1.3-sol7-sparc-local
注意pkgadd在安装时会用到/var/tmp存放临时文件,应保证该分区有足够空间;
如果空间不够,可按以下操作:
#mv /var/tmp /var/tmp_old
#ln -s /tmp /var (将/var/tmp link到/tmp)
解压并预安装部分软件:
#gzip -d gcc-2.8.1-sol7-sparc-local.gz
#gzip -d libstdc++-2.8.1.1-sol7-sparc-local.gz
#gzip -d make-3.78.1-sol7-sparc-local.gz
#pkgadd -d gcc-2.8.1-sol7-sparc-local
#pkgadd -d libstdc++-2.8.1.1-sol7-sparc-local
#pkgadd -d make-3.78.1-sol7-sparc-local
#pkgadd -d zlib-1.1.3-sol7-sparc-local
#pkgadd -d jpeg-6b-sol7-sparc-local
#pkgadd -d libpng-1.0.2-sol7-sparc-local
#pkgadd -d xpm-3.4k-sol7-sparc-local
#gzip -dc gd-1.8.3.tar.gz |tar xvf - (将会建立目录gd-1.8.3)
#gzip -dc php-4.0.2.tar.gz |tar xvf - (将会建立目录php-4.0.2)
#gzip -dc apache_1.3.14.tar.gz |tar xvf - (将会建立目录apache_1.3.14)
然后设置好路径(注意前后顺序)
#PATH=/usr/local/bin:/usr/bin:/usr/sbin:/usr/ucb:/usr/ccs/bin
#export PATH
至此,编译PHP所需的系统环境已准备妥当。
-------------------------------------------------
===============安装sybase 12.0并启动SQL SERVER==================
此处略去sybase12.0安装配置过程,sybase12.0安装在/opt/sybase12目录下。
在进行以下步骤前,应保证sybase已正常启动运行。
-------------------------------------------------
********************* 安装GD库 *********************
#cd /export/home/gd-1.8.3
#vi Makefile
搜索X11R6,将全部的X11R6替换为X,存盘退出。
#make
#make install
GD库安装完毕。
如果编译过程出现错误,一定要先
#make clean
然后再重新进行编译(以下同)。
-------------------------------------------------
XXXXXXXXXXXXXXXXXXXXXX 安装PHP4.02 XXXXXXXXXXXXXXXXXXXXXXX
#cd /export/home/apache_1.3.14
#./configure --prefix=/opt/soft/apache
(指定apache编译后存放在/opt/soft/apache目录下)
#cd ../php-4.0.2 (进入php4.0.2源代码目录)
#./configure --prefix=/opt/soft/php4 --with-apache=../apache_1.3.14
--with-mysql=no --with-sybase-ct=/opt/sybase12/OCS-12_0 -with-gd
-with-zlib-dir -with-jpeg-dir -with-png-dir -with-xpm-dir
--enable-track-vars
#make (编译)
#make install (安装)
php4.0.2安装完毕
如果编译出错,仔细查看出错信息。
如果提示没有sybXXX.h之类的文件,可到
http://www.sybase.com.cn/htm/cpjs/r_cpbdb_c.htm去下载Solaris平台相应版 本的ebf文件,然后展开到sybase相应目录下再进行编译,如果没有符合的版本, 找略高版本的代替。
-------------------------------------------------
++++++++++++++++++ 安装Apache 1.3.14+++++++++++++++++++++
#cd /export/home/apache_1.3.14
#./configure --prefix=/opt/soft/apache
--activate-module=src/modules/php4/libphp4.a
#make
#make install

Apache 1.3.14完装完毕

#cd ../php-4.0.2 (进入php4.0.2源代码目录)
#cp php.ini-dist /usr/local/lib/php.ini (拷贝PHP配置文件到指定目录)
-------------------------------------------------
####################### 修改 httpd.conf ########################
#cd /opt/soft/apache/conf
#vi httpd.conf
去掉"AddType application/x-httpd-php .php" 前的"#"号,此时php就可以用了。
去掉"ServerName XXXXX"前的"#"号,此时Apache就可以顺利启动了。
查找index.html所在的行,在index.html后面增加"index.php"(不包含双引号,且 index.html和index.php之间用空格隔开),此时Apache就可以按先index.html后 index.php的顺序查找文件了。
-------------------------------------------------
********************* 修改PHP配置文件 *********************
#vi /usr/local/lib/php.ini
搜索default_charset,使其有效,并将其值改为 "gb2312"。
搜索sybase.interfaces_file,使其有效,并将其值改为"/opt/sybase12/interfaces"。
搜索sybct.min_server_severity,将其值改为"50"。
搜索sybct.min_client_severity,将其值改为"50"。
注意:修改完毕重起Apache服务器时,执行以下2个步骤:
#/opt/soft/apache/bin/apachectl stop
等几秒钟后再执行
#/opt/soft/apache/bin/apachectl start
不要使用#kill -HUP 或#/opt/soft/apache/bin/apachectl restart重起
服务器。另外,据报告Php4.0.3pl1有Apache服务器不读sybct.min_XXXXX_severity的
bug,所以本文编译的是PHP4.0.2的正式发布版。
-------------------------------------------------
********************* 修改SYBASE12配置文件 *********************
#vi /opt/sybase12/interfaces
其内容看起来如下面的样子:
SYBASE12
master tli tcp /dev/tcp x00021e84c0a800030000000000000000
query tli tcp /dev/tcp x00021e84c0a800030000000000000000

x00021e84c0a800030000000000000000的含义为:
x 表示十六进制
0002 表示以太网(在Dec等机器上可能由于字节顺序不同而写为0200)
1e84 表示SYBASE12监听的服务端口号(十进制为7812)
c0a80003 表示SYBASE12的服务器IP地址(点分法表示为192.168.0.3)
-------------------------------------------------
接下来修改客户端默认字符集,使其和SYBASE12服务器的字符集一致:
#vi /opt/sybase12/locales/locales.dat
找到sun_svr4所在的段,找到default所在的行:
locale = default, us_english, iso_1
将其改为:
locale = default, us_english, cp850
如果你的服务器不是使用cp850字符集,请改为相应的字符集。本环境中SYBASE12和 客户端均使用cp850字符集。服务端和客户端字符集不匹配会出现乱码(注意这里所说 的客户端是指Apache服务器,而不是浏览器)。
然后在sybase12环境下使用
#isql -SSYBASE12 -Usa -P -Jcp850和
#isql -Usa -P测试字符集是否匹配。注意如果使用sybase client for Windows进行汉 字插/录入,注意当时客户端使用的字符集。
我在SYBASE字符集上花费了一整天时间才搞定,主要是没有资料可供参考。PHP的网站 上说sybase_connect()有第四个参数可以设定Client的字符集, 调用方法为sybase_connect(ServerName,UserName,Password[,CharSet]),但是无论我 怎么试都提示"参数数目不正确",经过和该函数的作者联系得知:
该函数只支持sybase-DB,不支持sybase-CT。
-------------------------------------------------
********************* 启动Apache服务器 *********************
如果要让Apache监听80端口,必须以root启动httpd服务。
首先修改环境变量,使root具备sybase启动需要的环境:
#cd
#vi .profile
在export PATH后面加入以下一行
. /opt/sybase12/SYBASE.sh
存盘退出。
#exit
以root重新登录,执行
#/opt/soft/apache/bin/apachectl start (启动Apache服务器)
然后在/opt/soft/apache/htdocs目录下建立一个文件index.php
内容为:

存盘退出。
#chown nobody index.php
#chgrp nobody index.php
打这个网址测试一下:http://ServerName
(ServerName即为httpd.conf中的ServerName)。
-------------------------------------------------
********************* 测试sybase数据库 *********************
以webmaster的权限登录,编辑一个文件/opt/soft/apache/htdocs/test.php进行测试,
内容如下:
$servername = "SYBASE12";
$username = "sa";
$password = "";
$table = "chat";
$dbName = "www";
sybase_min_server_severity(50);
$dbHandle = sybase_connect($servername, $username, $password)
or die("连接数据库失败");
sybase_select_db("$dbName") or die( "在服务器上找不到相应数据库。");
$query = sprintf("select * from %s",$table);
$result = sybase_query($query);
if(!$result)die("查询数据库失败!");
while($field = sybase_fetch_array($result))
{
printf("Database:%s
","www");
printf("Table:%s
","chat");
printf("Name:%s
",$field[name]);
printf("Date:%s
",$field[date]);
printf("Msg:%s

",$field[msg]);
}
sybase_close($dbHandle);

//测试非数据库环境下的中文显示。
echo "蒙古包的缕缕炊烟,轻轻地飘向蓝天,茫茫的绿草地,是我生长的摇篮。
";
?>
数据库的结构如下:
CREATE TABLE dbo.chat (
name varchar(15) NULL,
date datetime NULL,
msg varchar(200) NULL
)
-------------------------------------------------
********************* 测试GD库 *********************
以webmaster的权限登录,编辑一个文件/opt/soft/apache/htdocs/gd.php进行测试,
内容如下:
Header("Content-type: image/png");
$im = imagecreate(400,30);
$black = ImageColorAllocate($im, 0,0,0);
$white = ImageColorAllocate($im, 255,255,255);
imageline($im, 1, 1, 350, 25, $black);
imagearc($im, 200, 15, 20, 20, 35, 190, $white);
imagestring($im, 5, 4, 10, "Graph TEST!!", $white);
Imagepng($im);
ImageDestroy($im);
?>
1.6.2 版以前的 GD库有支持 GIF 格式的功能,但因为 GIF 格式使用的 LZW 演算法牵 涉到 Unisys 的专利权,因此在1.6.2版之后的 GD 库不再支持 GIF 的格式。本文使用 的是1.8.3版的GD库,因此对GIF格式不支持。

安装配置SYBASE12.0不在本文讨论范围之内,请参考相关文章。
======================== The End =======================

 

上一篇: 在没有CD-ROM驱动器的笔记本电脑上安装Linux
下一篇: sybase-ase- 11.0.3.3安装不完全攻略
站内公告
栏目导航
 Windows系统
 Linux/DOS
 办公应用
 工具软件
 图形图象
 网络应用
 安全防御
 网络编程
 软件教程
 实用技术
最新文章
中国星空图片网
·人体艺术
·性感美眉
·生活自拍
·幽默搞笑
·超级帅哥
·精彩万花筒
·梦幻景色
中国星空探索网
·神秘追踪 灵异接触
·鬼故事 灵异空间 图片
·未解之谜 探索宇宙
中国星空两性网
·两性图文 我的性事 情人 成人幽默
·性爱技巧 两性测试 性爱误区
·性事花边 生育避孕 性保健 性疾病
·两性生理 文化 讨论 心理 知识
·爱人同志 非常男女 一夜情
中国星空算网命
·手机吉凶 QQ号码吉凶 周公解梦
·塔罗牌测试 狗年运程
·关公灵签 紫薇斗数 八字排盘
·测试:你的成功指数有多少
·测验你的家庭是否美满?
·面相: 面型 眼睛 耳朵 口唇
·手相:拉你一把奶油桂花手
·测试:你能成为大富翁吗?
联系方式 设为首页
中国星空旗下---中国星空学习网    Copyright 2005-2050 Year   xx.happy369.com  Networks.All rights reserved
中国星空网所有内容均来源于网络,版权属于原作者,如侵犯到您的权益,请与我们联系,我们将尽快予以删除或处理。
中国星空不承担由于内容的合法性及健康性所引起的一切争议和法律责任。
陕ICP备05011765号 联系我们 
《女人如烟》--演唱:魏佳艺