crx349 发表于 2016-3-14 15:37:00

wdcp添加tomcat,同时支持php和java教程

本文主要讲如何在LNAMP环境下安装JDK+Tomcat6使同一台服务器同时支持PHP和JAVA语言。

服务器系统和各软件版本如下所示:
   # uname -a
    Linux E.CentOS6.4 2.6.32-358.el6.x86_64 #1 SMP Fri Feb 22 00:31:26 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
    # /www/wdlinux/nginx/sbin/nginx -v
    nginx version: nginx/1.2.9
    # /www/wdlinux/httpd-2.2.24/bin/httpd -v
    Server version: Apache/2.2.24 (Unix)
    Server built: Oct 30 2014 00:17:07
    # rpm -qa |grep mysql
    mysql-libs-5.1.66-2.el6_3.x86_64
    # /www/wdlinux/php/bin/php -v
    Cannot load Zend Extension Manager - it was built with configuration 1.2.0, whereas running engine is API220090626,NTS
    PHP 5.3.27 (cli) (built: Oct 30 2014 00:30:02)
    Copyright (c) 1997-2013 The PHP Group
    Zend Engine v2.3.0, Copyright (c) 1998-2013 Zend Technologies


开始安装jdk:
列出yum库可用的jdk安装包       # yum -y list java*
    Loaded plugins: fastestmirror
    Loading mirror speeds from cached hostfile
    * base: mirror.bit.edu.cn
    * extras: mirror.bit.edu.cn
    * rpmforge: mirrors.neusoft.edu.cn
    * updates: mirrors.neusoft.edu.cn
    base | 3.7 kB 00:00
    extras | 3.3 kB 00:00
    rpmforge | 1.9 kB 00:00
    updates | 3.4 kB 00:00
    updates/primary_db | 171 kB 00:00
    Available Packages
    java-1.5.0-gcj.x86_64 1.5.0.0-29.1.el6 base
    java-1.5.0-gcj-devel.x86_64 1.5.0.0-29.1.el6 base
    java-1.5.0-gcj-javadoc.x86_64 1.5.0.0-29.1.el6 base
    java-1.5.0-gcj-src.x86_64 1.5.0.0-29.1.el6 base
    java-1.6.0-openjdk.x86_64 1:1.6.0.33-1.13.5.0.el6_6 updates
    java-1.6.0-openjdk-demo.x86_64 1:1.6.0.33-1.13.5.0.el6_6 updates
    java-1.6.0-openjdk-devel.x86_64 1:1.6.0.33-1.13.5.0.el6_6 updates
    java-1.6.0-openjdk-javadoc.x86_64 1:1.6.0.33-1.13.5.0.el6_6 updates
    java-1.6.0-openjdk-src.x86_64 1:1.6.0.33-1.13.5.0.el6_6 updates
    java-1.7.0-openjdk.x86_64 1:1.7.0.71-2.5.3.1.el6 updates
    java-1.7.0-openjdk-demo.x86_64 1:1.7.0.71-2.5.3.1.el6 updates
    java-1.7.0-openjdk-devel.x86_64 1:1.7.0.71-2.5.3.1.el6 updates
    java-1.7.0-openjdk-javadoc.noarch 1:1.7.0.71-2.5.3.1.el6 updates
    java-1.7.0-openjdk-src.x86_64 1:1.7.0.71-2.5.3.1.el6 updates
    java-1.8.0-openjdk.x86_64 1.8.0.25-1.b17.el6 updates
    java-1.8.0-openjdk-demo.x86_64 1.8.0.25-1.b17.el6 updates
    java-1.8.0-openjdk-devel.x86_64 1.8.0.25-1.b17.el6 updates
    java-1.8.0-openjdk-headless.x86_64 1.8.0.25-1.b17.el6 updates
    java-1.8.0-openjdk-javadoc.noarch 1.8.0.25-1.b17.el6 updates
    java-1.8.0-openjdk-src.x86_64 1.8.0.25-1.b17.el6 updates
    java_cup.x86_64 1:0.10k-5.el6 base
    java_cup-javadoc.x86_64 1:0.10k-5.el6 base
    java_cup-manual.x86_64 1:0.10k-5.el6 base
    javacc.x86_64 4.1-0.5.el6 base
    javacc-demo.x86_64 4.1-0.5.el6 base
    javacc-manual.x86_64 4.1-0.5.el6 base
    javassist.noarch 3.9.0-6.el6 base
    javassist-javadoc.noarch 3.9.0-6.el6 base


选择jdk1.6安装
# yum -y install java-1.6.0-openjdk*
其它版本请自己修改对应的版本号安装
检测是否安装成功

    # java -version
    java version "1.6.0_33"
    OpenJDK Runtime Environment (IcedTea6 1.13.5) (rhel-1.13.5.0.el6_6-x86_64)
    OpenJDK 64-Bit Server VM (build 23.25-b01, mixed mode)

安装tomcat6
因为wdcp后台默认安装的端口是8080,tomcat默认端口也是8080为了避免冲突请提前把wdcp后台端口改为其它端口(如:8089...)
可以到wdcp后台系统设置中手动修改,如下图:


# yum install tomcat6 tomcat6-webapps tomcat6-admin-webapps
安装成功 启动

    # service tomcat6 start
    其它命令:service tomcat6 {start|stop|restart|condrestart|try-restart|reload|force-reload|status|version}
启动成功,访问测试:http://ip:8080
如下图所示即为安装成功:

配置nginx和tomcat,使其不加端口号,直接通过域名也能访问
首先增加解析,使域名指向到主机IP,本地可以直接改host实现

解析正常
不加8080端口访问

添加8080端口访问

接下来修改nginx和tomcat的配置使其不加端口号也能访问到tomcat的webservice


    # cd /www/wdlinux/nginx/conf/vhost/
    # vi myweb.com.conf
    添加如下内容
    server {
    listen 80;
    server_name www.myweb.com myweb.com;
    #root /www/web/master_myweb_com/public_html;
    index index.html index.jsp index.htm;
    error_page 400 /errpage/400.html;
    error_page 403 /errpage/403.html;
    error_page 404 /errpage/404.html;
    error_page 405 /errpage/405.html;
    location ~ \.jsp$ {
    proxy_pass http://127.0.0.1:8080;
    include naproxy.conf;
    }
    location / {
    try_files $uri @tomcat;
    }
    location @tomcat {
    proxy_pass http://127.0.0.1:8080;
    include naproxy.conf;
    }
    access_log /www/web_logs/myweb_com_access.log wwwlogs;
    error_log /www/web_logs/myweb_com_error.log;
    }
重新加载nginx配置文件或重启nginx

    # service nginxd reload
    nginx: the configuration file /www/wdlinux/nginx/conf/nginx.conf syntax is ok
    nginx: configuration file /www/wdlinux/nginx/conf/nginx.conf test is successful
不加端口号访问测试:

至此nginx已经成功将来自myweb.com域名的请求代理到8080端口
如果需要配置多域名的话,还需要修改tomcat虚拟主机配置文件
默认配置文件路径:/etc/tomcat6/
默认项目路径:/var/lib/tomcat6/webapps/
tomcat默认指向/var/lib/tomcat6/webapps/ROOT目录
创建新项目目录,这里直接复制ROOT项目,进行修改
    # pwd
    /var/lib/tomcat6/webapps
    # chown -R root myweb.com
    修改权限,使新项目权限和默认项目权限一致
    # chgrp -R tomcat myweb.com
    # ll
    总用量 24
    drwxrwxr-x 5 root tomcat 4096 10月 30 22:06 examples
    drwxrwxr-x 5 root tomcat 4096 10月 30 22:06 host-manager
    drwxrwxr-x 5 root tomcat 4096 10月 30 22:06 manager
    drwxr-xr-x 3 root tomcat 4096 10月 30 22:48 myweb.com
    drwxrwxr-x 3 root tomcat 4096 10月 30 22:06 ROOT
    drwxrwxr-x 5 root tomcat 4096 10月 30 22:06 sample
    # cd myweb.com/
    # rm -f index.html
    # vi index.jsp
    写入:WebService is Tomcat
    不要忘记删除ROOT项目或者对它重命,否则新项目不生效
    # mv ROOT/ ROOT.BAK
修改tomcat虚拟主机配置
    # vi /etc/tomcat6/server.xml
    在最下面<Host></Host>标签后面添加如下内容
    <!--myweb.com host config-->
    <Host name="www.myweb.com" appBase="webapps"
    unpackWARs="true" autoDeploy="true"
    xmlValidation="false" xmlNamespaceAware="false">
    <Context path="/" reloadable="true" docBase="myweb.com"/>
    <Alias>myweb.com</Alias>
    <!-- SingleSignOn valve, share authentication between web applications
    Documentation at: /docs/config/valve.html -->
    <!--
    <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
    -->
    <!-- Access log processes all example.
    Documentation at: /docs/config/valve.html -->
    <!--
    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
    prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>
    -->
    </Host>
如下图所示

重启tomcat,测试http://xxx.com
# service tomcat6 restart

页: [1]
查看完整版本: wdcp添加tomcat,同时支持php和java教程