linux下配置tomcat、resin

简介:

一、tomcat安装配置

1、 什么是tomcat

Tomcat就是用来解析jsp程序的一个软件;web容器;

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。  

Tomcat是一个轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。


2. 安装JDK

JDK(Java Development Kit) 是 Java 语言的软件开发工具包(SDK)。没有JDK的话,无法编译Java程序。

下载jdk    本篇使用的版本为jdk-8u31-linux-i586.tar.gz

32位JDK包:http://download.oracle.com/otn-pub/java/jdk/8u45-b14/jdk-8u45-linux-i586.tar.gz

64位JDK包:http://download.oracle.com/otn-pub/java/jdk/8u45-b14/jdk-8u45-linux-x64.tar.gz


下载后解压:

tar zxvf  jdk-8u31-linux-i586.tar.gz

mv jdk1.8.0_31   /usr/local/jdk1.8.0_31

vim /etc/profile.d/java.sh   //加入如下配置

1
2
3
4
5
JAVA_HOME= /usr/local/jdk1 .8.0_31
JAVA_BIN= /usr/local/jdk1 .8.0_31 /bin
JRE_HOME= /usr/local/jdk1 .8.0_31 /jre
PATH=$PATH: /usr/local/jdk1 .8.0_31 /bin : /usr/local/jdk1 .8.0_31 /jre/bin
CLASSPATH= /usr/local/jdk1 .8.0_31 /jre/lib : /usr/local/jdk1 .8.0_31 /lib : /usr/local/jdk1 .8.0_31 /jre/lib/charsets .jar

让java.sh生效执行#. /etc/profile.d/java.sh

如果以上配置成功,则下面的命令可以看到java的版本:

1
2
3
4
[root@localhost src] # java -version
java version  "1.8.0_31"
Java(TM) SE Runtime Environment (build 1.8.0_31-b13)
Java HotSpot(TM) Client VM (build 25.31-b07, mixed mode)


3、安装tomcat

Tomcat 官网tomcat.apache.org

cd /usr/local/src/

# wget   http://apache.fayea.com/tomcat/tomcat-7/v7.0.62/bin/apache-tomcat-7.0.62.tar.gz

# tar -zxvf apache-tomcat-7.0.62.tar.gz

# mv apache-tomcat-7.0.62 /usr/local/tomcat

# cp -pv /usr/local/tomcat/bin/catalina.sh /etc/init.d/tomcat
"/usr/local/tomcat/bin/catalina.sh" -> "/etc/init.d/tomcat"


vim /etc/init.d/tomcat  //从第二行加入

1
2
3
4
5
6
# chkconfig: 2345 63 37
# description: tomcat server init script
# Source Function Library
/etc/init .d /functions
JAVA_HOME= /usr/local/jdk1 .8.0_31
CATALINA_HOME= /usr/local/tomcat

chmod 755 /etc/init.d/tomcat

chkconfig --add tomcat

chkconfig tomcat on

service tomcat start

ps aux |grep tomcat

1
2
3
4
5
6
7
8
9
10
11
[root@localhost src] # service tomcat start
Using CATALINA_BASE:    /usr/local/tomcat
Using CATALINA_HOME:    /usr/local/tomcat
Using CATALINA_TMPDIR:  /usr/local/tomcat/temp
Using JRE_HOME:         /usr/local/jdk1 .8.0_31
Using CLASSPATH:        /usr/local/tomcat/bin/bootstrap .jar: /usr/local/tomcat/bin/tomcat-juli .jar
Tomcat started.
 
[root@localhost src] # ps aux |grep tomcat
root      9324 48.2  3.6 332716 37312 pts /0     Sl   15:49   0:08  /usr/local/jdk1 .8.0_31 /bin/java  -Djava.util.logging.config. file = /usr/local/tomcat/conf/logging .properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed. dirs = /usr/local/tomcat/endorsed  -classpath  /usr/local/tomcat/bin/bootstrap .jar: /usr/local/tomcat/bin/tomcat-juli .jar -Dcatalina.base= /usr/local/tomcat  -Dcatalina.home= /usr/local/tomcat  -Djava.io.tmpdir= /usr/local/tomcat/temp  org.apache.catalina.startup.Bootstrap start
root      9337  0.0  0.0   5980   740 pts /0     S+   15:49   0:00  grep  tomcat

浏览器输入  http://ip:8080  可以看到tomcat的欢迎页

spacer.gifwKioL1VlNUCinzOOAAci9-Y20w8915.jpg


4、配置tomcat

更改默认启动端口:

cd /usr/local/tomcat

vim conf/server.xml  

把Connector port=“8080”  改为 Connector port="80" 

配置新虚拟主机:

找到</Host>下一行插入新的<Host>内容如下:

1
2
3
4
5
<Host name= "www.111.com"  appBase= "/data/tomcatweb"
unpackWARs= "false"  autoDeploy= "true"  xmlValidation= "false"
xmlNamespaceAware= "false" >
<Context path= ""  docBase= "./"  debug= "0"  reloadable= "true"  crossContext= "true" />
< /Host >

新建tomcatweb目录    # mkdir /data/tomcatweb

重启tomcat,先停止,在启动:

service tomcat stop

service tomcat start

查看监听的端口是否为80    # netstat -nlp |grep 80

spacer.gifwKioL1VlNZWAMuTGAAFYQ9enb6Y028.jpg

5、测试jsp解析

vim /data/tomcatweb/111.jsp     //内容如下:

<html><body><center>

Now time is: <%=new java.util.Date()%>

</center></body></html>


使用curl进行测试,结果如下,会显示当前日期和时间:

1
2
3
4
[root@localhost tomcat] # curl -xlocalhost:80 www.111.com/111.jsp
<html><body><center>
Now  time  is: Mon May 25 16:08:35 CST 2015
< /center >< /body >< /html >

windows更改host文件:192.168.20.30 www.111.com

打开浏览器www.111.com/111.jsp 访问测试

spacer.gifwKioL1VlNdTSkZajAABMMlE4KTo181.jpg


二、 resin安装配置

Resin是CAUCHO公司(http://www.caucho.com/)的产品,是一个非常流行的支持servlets 和jsp的引擎,速度非常快。Resin本身包含了一个支持HTTP/1.1的WEB服务器。虽然它可以显示动态内容,但是它显示静态内容的能力也非常强,速度直逼APACHE SERVER。许多站点都是使用该WEB服务器构建的。

Resin也可以和许多其他的WEB服务器一起工作,比如Apache server和IIS等。Resin支持Servlets 2.3标准和JSP 1.2标准。熟悉ASP和PHP的用户可以发现用Resin来进行JSP编程是件很容易的事情。

Resin支持负载平衡(Load balancing),可以增加WEB站点的可靠性。方法是增加服务器的数量。比如一台SERVER的错误率是1%的话,那么支持负载平衡的两个Resin服务器就可以使错误率降到0.01%。

Resin有免费、收费版本;


1、安装jdk,步骤和上面tomcat安装一样;

2、安装resin

wget  http://www.caucho.com/download/resin-4.0.36.tar.gz

tar zxvf resin-4.0.36.tar.gz

cd resin-4.0.36

./configure --prefix=/usr/local/resin   --with-java-home=/usr/local/jdk1.8.0_31

make  && make install

/etc/init.d/resin start


3、配置resin

cd /usr/local/resin/conf

vim  resin.xml

结构: <cluster  id="app"> <host></host> </cluster>  虚拟主机配置就在<host></host>里配置

1
2
3
     <host  id = "www.a.com"  root-directory= "." >
     <web-app  id = "/"  root-directory= "/tmp/123" />
     < /host >

新建目录mkdir /tmp/123

vim  /tmp/123/111.jsp  //加入

1
2
3
<html><body><center>
Now  time  is: <%=new java.util.Date()%>
< /center >< /body >< /html >

使用curl测试,可以显示当前日期和时间,说明jsp解析正确:

1
2
3
4
[root@localhost 123] # curl -x127.0.0.1:8080 www.a.com/111.jsp
<html><body><center>
Now  time  is: Mon May 25 17:30:26 CST 2015
< /center >< /body >< /html >
1
2
3
4
5
6
7
[root@localhost 123] # netstat -nlp |grep 80
tcp        0      0 127.0.0.1:6800              0.0.0.0:*          LISTEN      11523 /java
tcp        0      0 ::ffff:127.0.0.1:8005       :::*               LISTEN      9456 /java 
tcp        0      0 :::8009                     :::*               LISTEN      9456 /java 
tcp        0      0 :::8080                     :::*               LISTEN      11523 /java
tcp        0      0 :::80                       :::*               LISTEN      9456 /java 
unix  2      [ ACC ]     STREAM     LISTENING     9080   1276 /master    private /lmtp

/usr/local/resin/conf/resin.properties    可以修改resin监听端口;


使用nginx代理resin,/usr/local/nginx/conf/vhosts/proxy.conf 进行配置;访问8080交给resin处理;

启动nginx:/etc/init.d/nginx start

1
2
3
4
5
6
7
8
9
10
[root@localhost vhosts] # cat proxy.conf 
server {
     server_name www.a.com;
     location / {
          proxy_pass   http: //127 .0.0.1:8080/;
          proxy_set_header Host   $host;
          proxy_set_header X-Real-IP      $remote_addr;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
     }
}

使用curl测试,本地80、8080端口都可以正确解析到jsp文件;

1
2
3
4
5
6
7
8
[root@localhost conf] # curl -xlocalhost:80 www.a.com/111.jsp
<html><body><center>
Now  time  is: Tue May 26 17:52:54 CST 2015
< /center >< /body >< /html >
[root@localhost conf] # curl -xlocalhost:8080 www.a.com/111.jsp
<html><body><center>
Now  time  is: Tue May 26 17:53:00 CST 2015
< /center >< /body >< /html >

停止nginx,再解析的话80端口提示未连接到主机;使用8080正常解析;

1
2
3
[root@localhost conf] # /etc/init.d/nginx stop
停止 Nginx:                                               [确定]
[root@localhost conf] # curl -xlocalhost:80 curl: (7) couldn't connect to host
1
2
3
4
[root@localhost conf] # curl -xlocalhost:8080 www.a.com/111.jsp
<html><body><center>
Now  time  is: Tue May 26 17:54:02 CST 2015
< /center >< /body >< /html >


windows更改host文件:192.168.20.30 www.a.com

浏览器访问 www.a.com/111.jsp    不用输入端口号,可以直接访问;

wKiom1VlNaexcI5aAABjUaxBWeI400.jpg






本文转自 模范生 51CTO博客,原文链接:http://blog.51cto.com/mofansheng/1655561,如需转载请自行联系原作者
目录
相关文章
|
16天前
|
安全 Ubuntu Java
Linux配置使用篇
Linux配置使用篇
|
28天前
|
存储 负载均衡 索引
linux7安装elasticsearch-7.4.0集群配置
linux7安装elasticsearch-7.4.0集群配置
113 0
|
1月前
|
监控 Linux Shell
【Shell 命令集合 网络通讯 】Linux 配置和管理网络流量的形状 shapecfg命令 使用指南
【Shell 命令集合 网络通讯 】Linux 配置和管理网络流量的形状 shapecfg命令 使用指南
39 0
|
1月前
|
存储 Shell Linux
【Shell 命令集合 系统管理 】Linux 修改用户的属性和配置 usermod命令 使用指南
【Shell 命令集合 系统管理 】Linux 修改用户的属性和配置 usermod命令 使用指南
30 1
|
15天前
|
前端开发 Java 应用服务中间件
Springboot对MVC、tomcat扩展配置
Springboot对MVC、tomcat扩展配置
|
15天前
|
网络协议 Linux
在Linux中,管理和配置网络接口
在Linux中管理网络接口涉及多个命令,如`ifconfig`(在新版本中被`ip`取代)、`ip`(用于网络设备配置)、`nmcli`(NetworkManager的CLI工具)、`nmtui`(文本界面配置)、`route/ip route`(处理路由表)、`netstat/ss`(显示网络状态)和`hostnamectl/systemctl`(主机名和服务管理)。这些命令帮助用户启动接口、设置IP地址、查看连接和路由信息。不同发行版可能有差异,建议参考相应文档。
19 4
|
1天前
|
Ubuntu Linux 测试技术
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试(下)
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试
19 1
|
1天前
|
运维 网络协议 Linux
Linux(28) Linux双网卡配置为连接到Linux主机的PC提供外网访问
Linux(28) Linux双网卡配置为连接到Linux主机的PC提供外网访问
11 1
|
2天前
|
Ubuntu 网络协议 Linux
Linux(20) Ubuntu 20.04 网络接口自动切换路由配置
Linux(20) Ubuntu 20.04 网络接口自动切换路由配置
23 0
|
2天前
|
Linux
Linux(9)Debain EC25 quectel-CM usbnet0开机自动联网配置
Linux(9)Debain EC25 quectel-CM usbnet0开机自动联网配置
15 0