Tomcat注册成windows系统服务之后,如何增加 security 安全参数在dos命令行启动tomcat为:startup.bat -security,传递了security安全参数,防止用jsp列表服务器上的文件、目录对象,但是注册成系统服务之后,无法为服务增加参数。在网上 搜索了很多资料,问类似问题的也不少,但是没有一个解决的。经过自己测试,终于找到了解决办法。为了不让其他网友走自己同样的弯路,特将方法总结一下。在 tomcat的bin目录下,有一tomcat5w.exe文件,此工具是监控tomcat服务状态及配置服务的。
打开此工具,切换到java标签页面,在java options选项里开始加入如下参数:-Djava.security.manager- Djava.security.policy=D://temp//apache-tomcat-5.5.12//conf //catalina.policy【将目录改为tomcat安装的目录】点击【确定】或者【应用】按钮,保存配置,重新启动服务,即可。
从网络上找到一些关于Tomcat5w的资料:
先说说Tomcat5.exe和Tomcat5w是干什么的。
Tomcat5.exe可以把Tomcat加入服务;Tomcat5w.exe可以辅助配置已经添加的服务。
Tomcat5w.exe 监控程序
Tomcat5w是一个监控和配置Tomcat服务的图形界面应用程序。可用的命令行选项如下:
//ES// 编辑服务配置,这是缺省的选项。如果没有提供任何选项,却把tomcat5w.exe重命名为%SERVICE_NAME%.exe运行的话,这个选项就被调用。
//MS// 监控服务,讲图标放置到系统托盘中。
Tomcat5.exe 服务程序
命令行选项
每一个命令行指令都形如//XX//ServiceName
可用的命令行选项如下:
The ServiceName is the name of the executable without exe sufix, meaning Tomcat5
//TS// 控制台应用程序模式运行服务,这是缺省的操作。在没有提供任何选项开关的时候,它被调用。服务名是执行文件没有exe后缀的部分,如Tomat5。
//RS// Run Service的缩写,运行服务,在服务管理器(Sevices.msc)中启动服务的时候被调用。
//SS// Stop Service的缩写,停止服务,在服务管理器中停止服务时被调用。
//US// Update Service的缩写,更新服务参数。
//IS// Install service 的缩写,安装服务 。
//DS// Delete service的缩写,删除服务,如果服务正在运行,首先删除服务。
命令行参数
每一个命令行参数以“--”开头。如果命令行以“++”为前缀,则它的值附加到存在的选项上。如果存在和命令行参数有同样的名字,但是以PR_开头的环境变量,它将被优先使用。例如:
set PR_CLASSPATH=xx.jar
等同于
--Classpath=xx.jar
作为命令行参数。
参数名 缺省值 描述
--Description 服务名描述 (最多1024个字符)
--DisplayName ServiceName 服务显示名称
--Install procrun.exe //RS//ServiceName 安装服务
--Startup manual Service 服务启动模式,可以是自动或者手动,值分别为:auto和manual
--DependsOn 列举此服务依赖的所有服务. 被依赖的服务用#或者;分隔。
--Environment 列决提供给服务使用的环境变量,形如key=value。多个环境变量之间用#或者;分隔。
--User 运行服务使用的用户账号。 只有在运行于没有“作为服务登录”权限下的账户中使用StartMode java 或者作为服务的exe可运行程序选项的情况下才被使用。
--Password --User参数中用户的密码
--JavaHome JAVA_HOME 定义了JAVA_HOME环境变量时,设置一个不同的JAVA_HOME环境变量
--Jvm auto 用auto或指定jvm.dll的全路径。这里可以使用环境变量表达式。
--JvmOptions -Xrs 列举形如-D 或 -X 的开关传递给JVM虚拟机。多个选项开关之间用#或者;分隔。
--Classpath 设置Java的ClassPath环境变量。
--JvmMs 设置初始使用的内存池容量,单位为MB。
--JvmMx 设置最大使用的内存池容量,单位为MB。
--JvmSs 线程堆栈容量,单位为KB
--StartImage 要被运行的可执行文件
--StartPath 开始运行可执行文件的工作路径
--StartClass 启动时使用的类
--StartParams 列决要传递给StartImage 或 StartClass的参数。多个参数之间用#或者;分隔。
--StartMethod Main 启动服务调用的方法,如果不是main,这里写上方法名
--StartMode executable 可以是jvm、java或exe 之一
--StopImage 停止服务调用的可执行文件
--StopPath 停止服务执行的文件的工作路径
--StopClass 停止服务调用的类
--StopParams 列决要传递给 StopImage 或 StopClass 的参数。多个参数之间用#或者;分隔。
--StopMethod Main 停止服务调用的方法,如果不是main,这里写上方法名
--StopMode executable 可以是jvm、java或exe 之一
--StopTimeout No Timeout 定义一个服务顺利退出的延时,单位为秒。
--LogPath 定义日志路径
--LogPrefix jakarta_service 定义日志文件名前缀
--LogLevel INFO 定义日志等级,可选值:error, info, warn或debug
--StdOutput 重定向stdout文件名
--StdError 重定向Stderr文件名
安装服务
手动安装服务最安全的方法就是使用service.bat脚本。
使用service.bat安装名字为''''Tomcat5''''的服务
C:/> service.bat install Tomcat5
如果使用tomcat5.exe安装名字为''''Tomcat5''''的服务,你需要使用//IS//参数。
C:/> tomcat5 //IS//Tomcat5 --DisplayName="Apache Tomcat 5" --Install="C:/Program Files/Tomcat/bin/tomcat5.exe" --Jvm=auto --StartMode=jvm --StopMode=jvm --StartClass=org.apache.catalina.startup.Bootstrap --StartParams=start --StopClass=org.apache.catalina.startup.Bootstrap --StopParams=stop
更新服务
要更新服务的参数,你需要使用tomcat5.exe的//US//参数。
更新名字为''''Tomcat5的服务
C:/> tomcat5 //US//Tomcat5 --Description="Apache Tomcat Server - http://jakarta.apache.org/tomcat " --Startup=auto --Classpath=%JAVA_HOME%/lib/tools.jar;%CATALINA_HOME%/bin/bootstrap.jar
移除服务
要移除服务,你需要使用tomcat5.exe的//DS//参数。如果服务正在运行,将首先关闭然后删除。
移除名字为''''Tomcat5''''的服务
C:/> tomcat5 //DS//Tomcat5
调试服务
如果需要在控制台模式运行服务,应该使用//TS//参数。此时若要关闭服务必须使用CTRL+C 或者 CTRL+BREAK关闭控制台。如果你将tomcat5.exe 更名为 testservice.exe那么你应该运行testservice.exe,命令模式将被缺省运行。
在控制台模式下运行命称为''''Tomcat5'''' 的服务
C:/> tomcat5 //TS//Tomcat5 [additional arguments]
或者简单地运行:
C:/> tomcat5
打开此工具,切换到java标签页面,在java options选项里开始加入如下参数:-Djava.security.manager- Djava.security.policy=D://temp//apache-tomcat-5.5.12//conf //catalina.policy【将目录改为tomcat安装的目录】点击【确定】或者【应用】按钮,保存配置,重新启动服务,即可。
从网络上找到一些关于Tomcat5w的资料:
先说说Tomcat5.exe和Tomcat5w是干什么的。
Tomcat5.exe可以把Tomcat加入服务;Tomcat5w.exe可以辅助配置已经添加的服务。
Tomcat5w.exe 监控程序
Tomcat5w是一个监控和配置Tomcat服务的图形界面应用程序。可用的命令行选项如下:
//ES// 编辑服务配置,这是缺省的选项。如果没有提供任何选项,却把tomcat5w.exe重命名为%SERVICE_NAME%.exe运行的话,这个选项就被调用。
//MS// 监控服务,讲图标放置到系统托盘中。
Tomcat5.exe 服务程序
命令行选项
每一个命令行指令都形如//XX//ServiceName
可用的命令行选项如下:
The ServiceName is the name of the executable without exe sufix, meaning Tomcat5
//TS// 控制台应用程序模式运行服务,这是缺省的操作。在没有提供任何选项开关的时候,它被调用。服务名是执行文件没有exe后缀的部分,如Tomat5。
//RS// Run Service的缩写,运行服务,在服务管理器(Sevices.msc)中启动服务的时候被调用。
//SS// Stop Service的缩写,停止服务,在服务管理器中停止服务时被调用。
//US// Update Service的缩写,更新服务参数。
//IS// Install service 的缩写,安装服务 。
//DS// Delete service的缩写,删除服务,如果服务正在运行,首先删除服务。
命令行参数
每一个命令行参数以“--”开头。如果命令行以“++”为前缀,则它的值附加到存在的选项上。如果存在和命令行参数有同样的名字,但是以PR_开头的环境变量,它将被优先使用。例如:
set PR_CLASSPATH=xx.jar
等同于
--Classpath=xx.jar
作为命令行参数。
参数名 缺省值 描述
--Description 服务名描述 (最多1024个字符)
--DisplayName ServiceName 服务显示名称
--Install procrun.exe //RS//ServiceName 安装服务
--Startup manual Service 服务启动模式,可以是自动或者手动,值分别为:auto和manual
--DependsOn 列举此服务依赖的所有服务. 被依赖的服务用#或者;分隔。
--Environment 列决提供给服务使用的环境变量,形如key=value。多个环境变量之间用#或者;分隔。
--User 运行服务使用的用户账号。 只有在运行于没有“作为服务登录”权限下的账户中使用StartMode java 或者作为服务的exe可运行程序选项的情况下才被使用。
--Password --User参数中用户的密码
--JavaHome JAVA_HOME 定义了JAVA_HOME环境变量时,设置一个不同的JAVA_HOME环境变量
--Jvm auto 用auto或指定jvm.dll的全路径。这里可以使用环境变量表达式。
--JvmOptions -Xrs 列举形如-D 或 -X 的开关传递给JVM虚拟机。多个选项开关之间用#或者;分隔。
--Classpath 设置Java的ClassPath环境变量。
--JvmMs 设置初始使用的内存池容量,单位为MB。
--JvmMx 设置最大使用的内存池容量,单位为MB。
--JvmSs 线程堆栈容量,单位为KB
--StartImage 要被运行的可执行文件
--StartPath 开始运行可执行文件的工作路径
--StartClass 启动时使用的类
--StartParams 列决要传递给StartImage 或 StartClass的参数。多个参数之间用#或者;分隔。
--StartMethod Main 启动服务调用的方法,如果不是main,这里写上方法名
--StartMode executable 可以是jvm、java或exe 之一
--StopImage 停止服务调用的可执行文件
--StopPath 停止服务执行的文件的工作路径
--StopClass 停止服务调用的类
--StopParams 列决要传递给 StopImage 或 StopClass 的参数。多个参数之间用#或者;分隔。
--StopMethod Main 停止服务调用的方法,如果不是main,这里写上方法名
--StopMode executable 可以是jvm、java或exe 之一
--StopTimeout No Timeout 定义一个服务顺利退出的延时,单位为秒。
--LogPath 定义日志路径
--LogPrefix jakarta_service 定义日志文件名前缀
--LogLevel INFO 定义日志等级,可选值:error, info, warn或debug
--StdOutput 重定向stdout文件名
--StdError 重定向Stderr文件名
安装服务
手动安装服务最安全的方法就是使用service.bat脚本。
使用service.bat安装名字为''''Tomcat5''''的服务
C:/> service.bat install Tomcat5
如果使用tomcat5.exe安装名字为''''Tomcat5''''的服务,你需要使用//IS//参数。
C:/> tomcat5 //IS//Tomcat5 --DisplayName="Apache Tomcat 5" --Install="C:/Program Files/Tomcat/bin/tomcat5.exe" --Jvm=auto --StartMode=jvm --StopMode=jvm --StartClass=org.apache.catalina.startup.Bootstrap --StartParams=start --StopClass=org.apache.catalina.startup.Bootstrap --StopParams=stop
更新服务
要更新服务的参数,你需要使用tomcat5.exe的//US//参数。
更新名字为''''Tomcat5的服务
C:/> tomcat5 //US//Tomcat5 --Description="Apache Tomcat Server - http://jakarta.apache.org/tomcat " --Startup=auto --Classpath=%JAVA_HOME%/lib/tools.jar;%CATALINA_HOME%/bin/bootstrap.jar
移除服务
要移除服务,你需要使用tomcat5.exe的//DS//参数。如果服务正在运行,将首先关闭然后删除。
移除名字为''''Tomcat5''''的服务
C:/> tomcat5 //DS//Tomcat5
调试服务
如果需要在控制台模式运行服务,应该使用//TS//参数。此时若要关闭服务必须使用CTRL+C 或者 CTRL+BREAK关闭控制台。如果你将tomcat5.exe 更名为 testservice.exe那么你应该运行testservice.exe,命令模式将被缺省运行。
在控制台模式下运行命称为''''Tomcat5'''' 的服务
C:/> tomcat5 //TS//Tomcat5 [additional arguments]
或者简单地运行:
C:/> tomcat5