热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

构建JSP、PHP与JAVA融为一体的开发环境

文章标题:构建JSP、PHP与JAVA融为一体的开发环境。Linux是中国IT实验室的一个技术频道。包含桌面应用,Linux系统管理,内核研究,嵌入式系统和开源等一些基本分类

  前言
  本文介绍了融JSP、PHP和JAVA于一炉的开发环境的建立,为了适合大多数初学者的需求,很多步骤都是采用比较方便的办法,力求简单明了。一般来说,没有特别需求的软件,我都是采用RPM的方式安装。如果你有优化配置、安全考虑等特殊需求,请参考相关的文章进行配置。
  在本文中,Apache以DSO模式安装,PHP实现了JAVA组件的支持,使得我们在进行大型项目开发的时候,可以选择PHP作为前端脚本语言,调用JAVA组件实现底层和企业级的应用。
  
  一.系统环境
  1.初始安装
  防火墙开放接口:21,22,80,2401,8009,10000,eth0
  Redhat Linux 9.0
  Development Tools
  Network Servers
  VSFtp
  CVS-1.11.2-10
  MySQL 3.23.54
  
  2.包安装
  JDK 1.4.2_04
  下载地址:http://www.netshine.com.cn/linux/j2sdk-1_4_2_04-linux-i586.rpm
  Tomcat 5.0.19
  下载地址:http://www.netshine.com.cn/linux/jakarta-tomcat-5.0.19.tar.gz
  
  3.脚本安装
  Webmin 1.110
  下载地址:http://www.netshine.com.cn/linux/webmin-1.110.tar.gz
  ZendOptimizer 2.5.1
  下载地址:http://www.netshine.com.cn/linux/ZendOptimizer-2.5.1-Linux_glibc21-i386.tar.gz
  
  4.手工编译
  Apache 2.0.49
  下载地址:http://www.netshine.com.cn/linux/httpd-2.0.49.tar.gz
  PHP 4.3.5
  下载地址:http://www.netshine.com.cn/linux/php-4.3.5.tar.gz
  JK 2-2.0.4
  下载地址:http://www.netshine.com.cn/linux/jakarta-tomcat-connectors-jk2-src-current.tar.gz
  
  5.客户机环境
  Windows XP Professional
  Absolute Telnet 3.0
  Zend Encoder
  Macromedia Dreamweaver MX 2004
  Borland JBuilder 9 Enterprise
  WinCVS 1.3
  下载地址:http://www.netshine.com.cn/linux/WinCvs13b17.zip
  
  二.系统安装
  启动Linux安装光盘,安装基本系统:FTP、开发工具和MySQL3.23.54。如果你是手工编译安装MySQL,要记得以后在编译PHP等程序时要指明MySQL的具体路径,否则会因找不到路径而导致编译出错。
  
  三.安装webmin1.110
  用Webmin来配置系统,傻瓜化,可以节省不少力气,所以一般我都先安装它。安装过程很简单,执行setup.sh脚本后照提示一步一步来就可以了。
  
  代码:
  
  # cd 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-mysql --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://www.php.net/manual/en/ref.java.php摘录下来的。
  
  // get instance of Java class java.lang.System in PHP
  $system = new Java('java.lang.System');
  
  // demonstrate property access
  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目录下哦。
  
  七.安装Tomcat
  1.执行以下命令
  
  代码:
  
  #cd *jk2*/jk/native2 //进入连接器编译目录
  #./buildconf.sh //运行配置脚本
  #./configure --with-apxs2=/usr/local/apache/bin/apxs --enable-jni --enable-EAPI
  #make //编译模块
  #cd ~jim/src/*jk2*/jk/build/jk2/apache2 //进入编译好模块的目录
  #cp *.so /usr/local/apache/modules/ //将模块拷贝到Apache目录
  #cp -R jakarta-tomcat-5.0.19 /usr/local/tomcat //安装Tomcat
  #touch /usr/local/apache/logs/shm.file //建立共享内存文件
  
  我刚开始安装Tomcat的时候,总是不成功,后来我跑到Apache的网站,看了一份只有两页的英文说明,很快就把它配好了。我发现国内的作者总是喜欢故弄玄虚,把本来很简单的东西搞得很复杂,让人家看不懂,以显示自己高明。
  
  2.编辑以下文件
  /usr/local/apache/conf/httpd.conf
  LoadModule jk2_module modules/mod_jk2.so
  JkSet config.file /usr/local/apache/conf/workers2.properties
  DocumentRoot "/usr/local/tomcat/webapps"
  
  
  /usr/local/tomcat/webapps/jsp-examples/for.jsp
  <%
  int i;
  for(i=1;i<100;i++)
  {
  out.println("Hello World!");
  }
  %>
  
  /usr/local/tomcat/conf/jk2.propertie
  handler.list=request,container,channelSocket
  channelS
推荐阅读
  • Docker的安全基准
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • 在计算机技术的学习道路上,51CTO学院以其专业性和专注度给我留下了深刻印象。从2012年接触计算机到2014年开始系统学习网络技术和安全领域,51CTO学院始终是我信赖的学习平台。 ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 在哈佛大学商学院举行的Cyberposium大会上,专家们深入探讨了开源软件的崛起及其对企业市场的影响。会议指出,开源软件不仅为企业提供了新的增长机会,还促进了软件质量的提升和创新。 ... [详细]
  • 本文详细分析了Hive在启动过程中遇到的权限拒绝错误,并提供了多种解决方案,包括调整文件权限、用户组设置以及环境变量配置等。 ... [详细]
  • 优化联通光猫DNS服务器设置
    本文详细介绍了如何为联通光猫配置DNS服务器地址,以提高网络解析效率和访问体验。通过智能线路解析功能,域名解析可以根据访问者的IP来源和类型进行差异化处理,从而实现更优的网络性能。 ... [详细]
  • 本文详细分析了JSP(JavaServer Pages)技术的主要优点和缺点,帮助开发者更好地理解其适用场景及潜在挑战。JSP作为一种服务器端技术,广泛应用于Web开发中。 ... [详细]
  • Linux 系统启动故障排除指南:MBR 和 GRUB 问题
    本文详细介绍了 Linux 系统启动过程中常见的 MBR 扇区和 GRUB 引导程序故障及其解决方案,涵盖从备份、模拟故障到恢复的具体步骤。 ... [详细]
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • CentOS7源码编译安装MySQL5.6
    2019独角兽企业重金招聘Python工程师标准一、先在cmake官网下个最新的cmake源码包cmake官网:https:www.cmake.org如此时最新 ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
  • 解决Linux系统中pygraphviz安装问题
    本文探讨了在Linux环境下安装pygraphviz时遇到的常见问题,并提供了详细的解决方案和最佳实践。 ... [详细]
  • 如何配置Unturned服务器及其消息设置
    本文详细介绍了Unturned服务器的配置方法和消息设置技巧,帮助用户了解并优化服务器管理。同时,提供了关于云服务资源操作记录、远程登录设置以及文件传输的相关补充信息。 ... [详细]
author-avatar
Eva---LiuJ
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有