PHP+JSP/servlets+Mysql+postgresql+apache完全安装
2004-04-23 15:18 pm来自:Linux文档
现载:Www.8s8s.coM
地址:无名
本页动态更新--随以上软件的最新版本变动来随时改动--但会以稳定版为例--不会选beta版。--fei水平有限--不足及错误之处请指正。--一般来说按照我的步骤不会有问题--而且是通用的--如要自行删或加功能对别的都不会有影响。
目前:apache 1.3.22稳定版2.0.28beta版
php 4.06稳定版 4.1.0开发版
postgresql 7.1.3 稳定版7.2beta3开发版
jdk-1.3.1稳定版.1.4beta3开发版
resin2.04稳定版--resin-cmp1.04稳定版
----解释--平台选用的是Mandrake8.1--而不是Redhat7.2--是因为我个人觉得redhat可能更注意性能--而mandrake更注重使用顺手和兼容性。--比如JDK1.4beta3我在一台redhat7.0升级到7.2的server上会出现动态库版本不兼容的问题--而mandrake8.1无论装什么都很顺利-(那怕是Oracle8i)-只是configure php和apache2.0.28--(1.3.22没问题)-会死在那里--这是bash的问题-下个源码--比如最新的2.05a--自己编译一下就行。还有就是mandrake缺省会安装kaffe一个开源的Java解释器--把它删了rpm -e kaffe-好装JDK-jsp/servlets引擎我用的是resin-cmp(resin也行--不过cmp可支持EJB哦:))而不是Tomcat是因为我个人觉得resin更快更好用-而且十分顺手。而resin-cmp对J2EE支持更好-还内置Mysql的JDBC驱动--太方便了。这些软件都可以在我开的ftp://202.96.64.158/pub/得到。
好下面开始了--
1--首先是JDK--
chmod 755 j2sdk-1_4_0-beta3-linux-i386-rpm.bin
./j2sdk-1_4_0-beta3-linux-i386-rpm.bin
回答yes--会生成一个rpm文件--rpm -ivh j2sdk-1_4_0-beta3-linux-i386-rpm--会装在/usr/java/j2sdk1.4.0下。改环境变量cd
vi .bash*e加/usr/java/j2sdk1.4.0/bin:/usr/java/j2sdk1.4.0/jre/bin到path,加JAVA_HOME=/usr/java/j2sdk1.4.0
CLASSPATH=/usr/java/j2sdk1.4.0/lib:/usr/java/j2sdk1.4.0/jre/lib
export JAVA_HOME CLASS_PATH然后source .ba*e--java -version看看是否生效了--这样JDK就装完了。
2。mysql--tar zxvf mysql*45*gz;cd mysql*45
./configure (这里有不少选项--可按需要加减--比如需要事务处理就加上--with-innodb可 --help看全部选项,常用的还有--prefix指定安装目录。如内存少加上--with-low-memory试试。然后make ,make install-再到prefix的目录下的bin下./my*db初始化系统表--然后./safe_mysqld -u root &即可起动mysql--注意-u root是最近版本加的--我是出于简便--也可以mysql用户身份运行--但要改脚本属性-然后mysqladmin u root password "password"设一下root口令。这样mysql就装好了。
3。然后是Postgresql--它与Mysql比要麻烦一些,要加useradd postgres这个用户--有些系统可能会自带此用户--最好删了重加,然后到Postgres主目录下编辑环境变量,(此步后做也行)--假设我要装到/home/postgres下chown postgres:postgres /home/postgres,vi .ba*e加入/home/postgres/bin到PATH后面,PGLIB=/home/postgres/lib;PGDATA=/home/postgres/data;MANPATH=/home/postgres/man;export PGLIB PGDATA MANPATH,然后source .ba*e,再回到安装目录。/configure --prefix=/home/postgres --enable-locale --with-multibyte同样要别的再加,make make install,再到doc下make install安装文档然后su - postgres,initdb,pg_ctl start就可以了。
4。php--注意要对Apache做预configure,先到apache目录src/include/--vi httpd.h找256--改成1024--不管你的负荷大不大--这一步是我推荐的。然后configure apache,再回到php目录configure --with-apache=../apache_1.3.22 (假设你所有软件解在同一目录下) --with-mysql=(你装mysql的目录,要是Mysql4你要打一个补丁。) --with-pgsql=/home/postgres --enable-track-vars --with-ftp --enable-trans-sid ,make ,make install。
5。apache--./configure --prefix=(你想装的地方) --activate-module=src/modules/php4/libphp4.a(不是libmodphp4.a) --enable-shared=max (支持DSO),make,make install,然后去Apache的安装后目录下conf下vi httpd.conf--去掉这两行前面的#
AddType application/x-httpd-php .php .php3 .phtml
AddType application/x-httpd-php-source .phps
../bin/apachectl start起动Apache在htdocs下建个phpinfo.php
--然后lynx http://localhost/phpinfo.php如能看到PHP相关信息--(包括mysql.postgresql,apache的——则说明安装成功了。
6。resin--解开tar zxvf resin*cmp*gz 进去后./configure --with-apache= --with-java=/usr/java/j2sdk1.4.0,make ,make install你会发现在Apache的httpd.conf最后面加上了一段mod_caucho的信息,重起Apache,再到resin目录下bin下./http*sh start--起动resin-cmp--lynx http://localhost:8080要是能看到页面说明resin-cmp也成功了。