本文介绍了融JSP、和于一炉的开发环境的建立,为了适合大多数初学者的需求,很多步骤都是采用比较方便的办法,力求简单明了。一般来说,没有特别需求的软件,我都是采用RPM的方式。如果你有优化配置、安全考虑等特殊需求,请参考相关的更多的资料进行配置。
在本文中,以DSO模式安装,PHP实现了JAVA组件的支持,使得我们在进行大型项目开发的时候,可以选择PHP作为前端脚本语言,调用JAVA组件实现底层和企业级的应用。
一.环境
1.初始安装
防火墙开放接口:21,22,80,2401,8009,10000,eth0
Redhat 9.0
Development Tools
Network Servers
VSFtp
CVS-1.11.2-10
3.23.54
2.包安装
JDK 1.4.2_04 下载地址:
Tomcat 5.0.19 下载地址:
3.脚本安装
Webmin 1.110 下载地址:
ZendOptimizer 2.5.1 下载地址:
4.手工编译
Apache 2.0.49 下载地址:
PHP 4.3.5 下载地址:
JK 2-2.0.4 下载地址:http://www.netshine.com.cn/linux/jakarta-tomcat-connectors-jk2-src-current.tar.gz
5.客户机环境
XP Professional
Absolute Telnet 3.0
Encoder
Macromedia Dreamweaver MX 2004
Borland JBuilder 9 Enterprise
WinCVS 1.3 下载地址:
二.安装
启动Linux安装光盘,安装基本:FTP、开发工具和MySQL3.23.54。如果你是手工编译安装MySQL,要记得以后在编译PHP等程序时要指明MySQL的具体路径,否则会因找不到路径而导致编译出错。
三.安装webmin1.110
用Webmin来配置,傻瓜化,可以节省不少力气,所以一般我都先安装它。安装过程很简单,执行setup.sh脚本后照提示一步一步来就可以了。
四.安装JDK1.4.2
1.编辑如下三个文件,没有指明全路径的放在你自己的home目录就可以。
/etc/profile JAVA_HOME=/usr/java/j2sdk1.4.2_04 CLASSPATH=.: $JAVA_HOME/lib:$JAVA_HOME/jre/lib CVSROOT=/usr/local/cvsroot PATH=.: $JAVA_HOME/bin: $JAVA_HOME/jre/bin:$PATH export JAVA_HOME CLASSPATH CVSROOT PATH /etc/ld.so.conf /usr/java/j2sdk1.4.2_04/jre/lib/i386 /usr/java/j2sdk1.4.2_04/jre/lib/i386/server HelloWorld.java class HelloWorld { public static void main(String[] args) { //本文件测试Java环境是否安装成功。 System.out.println("Hello World!"); } } |
2.执行以下命令:
# rpm -ivh j2sdk*.rpm //安装JDK包。 # source /etc/profile //重载profile环境。 # ldconfig //创建动态链接库缓存文件。 # javac -d . HelloWorld.java //编译测试文件。 # java HelloWorld //运行程序测试安装是否成功。 |
五.安装Apache
# tar xvzf httpd* //解压源码包。 # cd httpd* //进入安装目录。 # ./configure --prefix=/usr/local/apache --enable-so --enable-mods-shared=most --enable-rewrite # make;make install
//编译并安装。 |
说明:
--enable-so选项:让Apache可以支持DSO模式,注意,我们在这里采用的是Apache2.0的语法。如果你的Apache是1.3版本,应改为--enable-module=so。
--enable-mods-shared=most选项:告诉编译器将所有标准模块都编译为DSO模块。你要是用的是Apache1.3,改为--enable-shared=max就可以。
--enable-rewrite选项:支持地址重写功能,使用1.3版本的朋友请将它改为--enable-module=rewrite。
六.编译安装PHP
1.执行命令:
#tar xvzf php* //解压源码包 #cd php* //进入PHP安装命令 #./configure --prefix=/usr/local/php --with- --with-apxs2=/usr/local /apache/bin/apxs --with-java =/usr/java/j2sdk1.4.2_04 #make;make install //编译并安装 #cp php.ini-dist /usr/local/php/lib/php.ini //复制php配置文件 #cd /usr/local/php/lib/php/extensions/ no-debug-non-zts-20020429 //extensions目录 #ln -s java.so libphp_java.so //建立连接,忘记了会出错哦 #cd Zend* //进入ZendOptimizer目录 #./install //安装PHP加速器 |
说明:
--with-apxs2=/usr/local/apache/bin/apxs是Apache2的语法,1.3版本的用户请使用--with-apxs=/usr/local/apache/bin/apxs。
2.编辑下面三个文件:
/usr/local/apache/conf/httpd.conf LoadModule php4_module modules/libphp4.so AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps AddDefaultCharset gb2312 /usr/local/apache/htdocs/test.php //本程序测试PHP的JAVA环境是否可用, 是从http: //摘录下来的。 // get instance of Java class java.lang.System in PHP $system = new Java(java.lang.System); // demonstrate property echo Java version= . $system->getProperty(java.version) . ; echo Java vendor= . $system->getProperty(java.vendor) . ; echo OS= . $system->getProperty(os.name) . . $system->getProperty(os.version) . on . $system->getProperty(os.arch) . ; // java.util.Date example $formatter = new Java(java.text.SimpleDateFormat, "EEEE, MMMM dd, yyyy at h:mm:ss a zzzz"); echo $formatter->format (new Java(java.util.Date)); ?> /usr/local/php/lib/php.ini register_globals=On [Java] java.class.path=/usr/local/php/lib/php/ php_java.jar: /home/jim/myclass java.home=/usr/java/j2sdk1.4.2_04 java.library=/usr/java/j2sdk1.4.2_04 /jre/lib/i386/libjava.so java.library.path=/usr /local/php/lib/php/extensions/ no-debug-non-zts-20020429 extension_dir=/usr/local/php/lib/ php/extensions/no-debug-non-zts-20020429 extension=libphp_java.so |
注意:
(1).如果你刚刚从以前老版本的PHP转换到新版本,可能会发现你的PHP程序很多都不能用了。不过把register_globals打开就会一切正常了。这是因为老版本的PHP,它的register_globals默认是开着的,而新版本,却把它关了的缘故。
(2)./home/jim/myclass是我存放JAVA组件的路径,你可以根据实际情况修改,但是为了安全起见,不要放在web目录下。
阅读(288) | 评论(0) | 转发(0) |