加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 教程 > 正文

详细概述JSP、PHP与JAVA融合的开发环境

发布时间:2023-05-15 14:57:31 所属栏目:教程 来源:
导读:本文介绍了融jsp、php和java于一炉的开发环境的建立,为了适合大多数初学者的需求,很多步骤都是采用比较方便的办法,力求简单明了。一般来说,没有特别需求的软件,我都是采用rpm的方式安装。如果你有优化配置、安全
本文介绍了融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/profilejava_home=/usr/java/j2sdk1.4.2_04classpath=.:$java_home/lib:$java_home/jre/libcvsroot=/usr/local/cvsrootpath=.:$java_home/bin:$java_home/jre/bin:$pathexport 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/serverhelloworld.javaclass 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.soaddtype application/x-httpd-php .php  addtype application/x-httpd-php-source .phpsadddefaultcharset gb2312/usr/local/apache/htdocs/test.php//本程序测试php的java环境是否可用,代码是从http://www.php.net/manual/en/ref.java.php摘录下来的。// get instance of java classjava.lang.system in php$system = new java('java.lang.system');// demonstrate property accessecho '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//建立共享内存文件
 
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      /usr/local/tomcat/conf/jk2.propertie  handler.list=request,container,channelsocket  channelsocket.port=8009  channelsocket.address=127.0.0.1  channelsocket.maxport=port+10    /usr/local/apache/conf/workers2.properties  [shm]  file=/usr/local/apache/logs/shm.file  size=1048576  [workerenv:]  info=global server options  timing=1  debug=0  [channel.socket:localhost:8009]  port=8009  host=127.0.0.1  [ajp13:localhost:8009]  channel=channel.socket:localhost:8009  [uri:/*.jsp]  worker=ajp13:localhost:8009    /etc/rc.d/init.d/httpd  #!/bin/sh    # chkconfig:2345 92 12  # description:starting apache and tomcat server    ld_library_path=/usr/java/j2sdk1.4.2_04/jre/lib/i386:/usr/java/j2sdk1.4.2_04/jre/lib/i386/server  export ld_library_path    catalina_base=/usr/local/tomcat  export catalina_base    catalina_home=/usr/local/tomcat  export catalina_home    apache_home=/usr/local/apache  export apache_home    java_home=/usr/java/j2sdk1.4.2_04  export java_home    profiledir=/var/run    case "$1" in  start)    if [ -f $profiledir/tomcat5_apache2 ];then  echo "running tomcat5_apache2"  else  if [ -f $catalina_home/bin/startup.sh ];then  if [ -f $apache_home/bin/apachectl ];then  "$catalina_home/bin/startup.sh"  echo "startting tomcat5"  sleep 3  echo "startting apache2"  $apache_home/bin/apachectl start  echo "."  touch $profiledir/tomcat5_apache2  else  echo "apache file not founds"  fi  else  echo "tomcat file not founds"  fi  fi  ;;    stop)  if [ -f $profiledir/tomcat5_apache2 ];then  if [ -f $catalina_home/bin/shutdown.sh ];then  if [ -f $apache_home/bin/apachectl ];then  "$catalina_home/bin/shutdown.sh"  echo "stopping tomcat5"  sleep 3  echo "stopping apache2"  $apache_home/bin/apachectl stop  rm $profiledir/tomcat5_apache2  else  echo "apache file not founds"  fi  else  echo "tomcat file not founds"  fi  else  echo "not running tomcat5_apache2"  fi  ;;  *)  echo "usage; `basename $0`{start|stop}" 1>&2  exit 1  ;;  esac  exit 0
 
3.设置自动启动
 
#chmod u+x /etc/rc.d/init.d/httpd //修改文件执行权限#/sbin/chkconfig --add httpd//将httpd加入系统启动列表
 
八.安装cvs
 
1.编辑以下文件
 
/etc/xinetd.d/cvspserver  service cvspserver  {  socket_type=stream  wait=no  user=root  server=/usr/bin/cvs  server_args=-f --allow-root=/usr/local/cvsroot pserver  log_on_failure += userid  }
 
2.执行以下命令
 
# /usr/sbin/useradd -d /usr/local/cvsroot cvs //创建cvs管理用户。  #passwd cvs//创建管理用户密码。  # chmod 771 /usr/local/cvsroot //修改cvs根目录权限。  # su cvs //使用cvs用户的身份。  $ cvs -d /usr/local/cvsroot init //初始化cvs仓库。  $exit //退出cvs用户身份。  #chmod 644 /etc/xinetd.d/cvspserver//修改cvs服务启动文件权限。  # /etc/rc.d/init.d/xinetd restart//重启动xinetd超级服务器。  # netstat -lnp|grep 2401//查看cvs服务是否已经启动。  # /usr/sbin/useradd cvspub//创建cvs等效系统用户cvspub。  # /usr/sbin/usermod -g cvs cvspub//将cvspub用户加入cvs组。  #cd /home/tets1//进入测试用的项目目录。  #cvs import -m'this is a test only' test1 v_0_0_1 start //将当前项目的文件导入cvs仓库。
 
说明:
 
cvs的密码问题,以前众说纷纭,有的是编一段程序来生成密码,有的则用所谓的土方法去拷贝shadow密码。其实我可以告诉初学者一个最简单方便的方法,就是采用webmin添加cvs用户,它自己就会帮你生成密码。
 
3.编辑以下文件:
 
/usr/local/cvsroot/cvsroot/passwdtest1:nxwxabrve7z/w:cvspubtest2:fztxeaww.ysia:cvspub
 
说明:
 
主要是在最后加上用户名cvspub,让系统用户cvspub代替test1和test2去读写cvs仓库。
 
/usr/local/cvsroot/cvsroot/readerstest1/usr/local/cvsroot/cvsroot/writerscvstest2
 
至此,整个系统配置完成。
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!