阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Jetty服务器的安装配置详解

165次阅读
没有评论

共计 3243 个字符,预计需要花费 9 分钟才能阅读完成。

Jetty 是一个开源的 Servlet 容器和应用服务器,它极度轻量级、高便携性、功能强大、灵活和扩展性好,而且支持各种技术如 SPDY、WebSocket、OSGi、JMX、JNDI 和 JAAS。Jetty 对于开发来说非常便利,也已经广泛地应用于生产环境。
本文详述如何安装和配置 Jetty 服务器,主要讲述 Jetty 的独立运行模式(Standalone)。随后介绍它的配置选项,以及模块化的架构。
Jetty 有独立运行模式、嵌入运行模式和 Jetty Maven 插件操作模式。本文是独立运行模式为准。

一、部署环境

两个软件:

1)Java 8u60

http://download.Oracle.com/otn-pub/java/jdk/8u60-b27/jdk-8u60-windows-x64.exe

2)Jetty 9.3.2

http://eclipse.org/downloads/download.php?file=/jetty/stable-9/dist/jetty-distribution-9.3.2.v20150730.zip&r=1
早些的版本也可以用,但应该尽可能使用最新版本。
Jetty 是一个跨平台的软件,因此它的二进制发布包可适用于多个平台。

二、部署运行

下载并解压 Jetty,进入 Jetty 的解压目录,执行命令:

java -jar start.jar

输出如下:

D:\Programs\jetty9>java -jar start.jar
2015-09-02 16:31:36.273:INFO::main: Logging initialized @2060ms
2015-09-02 16:31:36.696:WARN:oejs.HomeBaseWarning:main: This instance of Jetty is not running from a separate {jetty.base} directory, this is not recommended.  See documentation at http://www.eclipse.org/jetty/documentation/current/startup.html
2015-09-02 16:31:37.228:INFO:oejs.Server:main: jetty-9.3.2.v20150730
2015-09-02 16:31:37.302:INFO:oejdp.ScanningAppProvider:main: Deployment monitor [file:///D:/Programs/jetty9/webapps/] at interval 1
2015-09-02 16:31:37.701:INFO:oejs.ServerConnector:main: Started ServerConnector@3b81a1bc{HTTP/1.1,[http/1.1]}{0.0.0.0:8080}
2015-09-02 16:31:37.704:INFO:oejs.Server:main: Started @3491ms

用浏览器访问地址:http://localhost:8080/,可以看到
Jetty 服务器的安装配置详解

三、运行 Jetty Web 应用

在 Jetty 应用服务器中部署 war 项目很简单,只需把项目 war 包放入 Jetty 的 webapps 子目录即可。你都无需重启 Jetty,Jetty 会自动随时监听 webapps 目录,自动完成新项目的部署。

四、Jetty 目录剖析

bin:可执行脚本文件
demo- base:
etc:Jetty 模块定义的 XML 配置文件的目录
lib:Jetty 依赖的库文件
logs:Jetty 的日志目录
modules:Jetty 的模块
resources:外部资源配置文件的目录
webapps:项目 WAR 文件的目录
还需要关心根目录下的一个文件:start.d(Wondows 系统是 start.ini 文件),它定义了 Jetty 的活动模块。

五、基本配置

1、修改 Jetty 的端口

Jetty 默认使用 8080 端口,要让它使用其他端口(如 7070),那么编辑 start.d(Wondows 系统是 start.ini 文件),找到 jetty.http.port 行,修改为:

## Connector port to listen on
jetty.http.port=7070

保存并退出,再重启 Jetty。

2、修改 webapps 目录

Jetty 下的 webapps 是默认的 Web 项目的部署目录,如果想修改此目录,可修改 start.d 配置文件(start.ini),移除以下行的注释符号“#”

# jetty.deploy.monitoredDir=webapps

并把内容修改到你指定的目录。保存并退出,再重启 Jetty。

六、Jetty 的模块化架构

Jetty 运行于模块化的架构之上,这意味着 Jetty 的功能是以模块的方式运行的,比如 HTTP、HTTPS、SSL、日志 logging、JMX、JNDI、WebSocket 等模块。常用的模块如 HTTP、JSP 和 WebSocket 模块都是默认就激活的,而其他如 HTTPS、JMX 等模块则需要手动激活。

1、单个模块的剖析

Jetty 的 modules 子目录列出了所有的模块,这些模块是扩展名为.mod 的文件,它声明了要被激活的 JAR 文件(在 Jetty 的 lib 子目录下)和 XML 配置文件(在 Jetty 的 etc 子目录下),以及其他要作为模块被激活的资源。
比如,可以查看 modules 子目录的 logging.mod 文件的内容,可以看到,它声明了配置文件是 etc/jetty-logging.xml,所需的 JAR 包在 lib/logging 处,另外 logs 目录是必须的。

[xml]
etc/jetty-logging.xml

[files]
logs/

[lib]
lib/logging/**.jar
resources/

2、通过命令行激活模块

激活 Jetty 的模块有两种方式。
第一种方式是通过命令行激活:

java -jar start.jar --add-to-startd=logging

上面的命令会在 Jetty 目录下创建 logging.ini 文件,相关的配置可以在此文件中查到。配置日志后,可以再次启动 Jetty,并可以查看到日志模块是激活了的。

2、通过配置文件 start.ini 激活模块

第二种方式是通过配置文件 start.ini 激活模块

--module=logging

这种方式和前一种相似,且更常用。

3、配置模块

正如上面提到的,mod 文件声明了相关的 XML 配置文件,在 Jetty 的 etc 子目录下,可以通过这些配置文件来配置模块。比如日志模块声明了相关的配置文件是 jetty-logging.xml,可以通过修改此配置文件来调整日志。

最后补充一句,要想了解更详细的内容,看官方文档吧。
http://www.eclipse.org/jetty/documentation/current/index.html

使用 Jetty 作为嵌入式服务器 http://www.linuxidc.com/Linux/2013-07/86983.htm

Jetty 源码分析 http://www.linuxidc.com/Linux/2013-10/90986.htm

Jetty 安装学习并展示 http://www.linuxidc.com/Linux/2014-05/101993.htm

Jetty 在 Eclipse 中的安装 http://www.linuxidc.com/Linux/2013-10/90991.htm

Linux(RedHat 5.8)下 安装 Jetty 部署 使用  http://www.linuxidc.com/Linux/2014-10/108342.htm

Jetty 的详细介绍:请点这里
Jetty 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-09/123299.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计3243字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中