【问题标题】:Tomcat Service gets installed with "Local Service" accountTomcat 服务使用“本地服务”帐户安装
【发布时间】:2020-05-12 17:51:59
【问题描述】:

发布 Tomcat 8.0.53,当我安装 Tomcat(9.0.30 或 8.5.50)并将其安装为服务(使用 service.bat)时,它会被安装但“登录”为“本地服务”而不是“本地系统帐户”。

这可以在windows的服务下看到。

因此,当我运行服务时,应用程序无法读取文件。

如果我手动转到服务,打开我的服务的属性,然后将登录更改为“本地系统”并保存,一切正常。

  1. 为什么 8.0.53 之后的 tomcat 版本会出现这种情况?
  2. 如何安装 tomcat 以便将“登录身份”设置为“LocalSystem”而不是“LocalService”?如8.59.0 文档中所述,我无法使用--User--Password 等附加参数来执行此操作。

【问题讨论】:

    标签: tomcat service windows-services tomcat8 tomcat9


    【解决方案1】:

    这似乎是以下问题的结果:5596963310。 Commons Daemon 1.2.0 的更新似乎是原因,并且似乎无法在安装过程中修改此设置。

    但是,之后可以在管理员命令提示符下使用以下命令将其设置为本地系统:

    sc config Tomcat8 obj=LocalSystem
    

    【讨论】:

    • 给定的解决方法工作正常!我只是没有时间回答我的问题。此外,由于在读取文件时只有一个文件存在问题,因此我使用 icacls/cacls windows 命令更改了文件权限,然后即使 tomcat 使用 LocalService 帐户作为窗口服务运行,该应用程序也能正常工作。
    • 很高兴它也对你有用!感谢您将此标记为答案。我发现了更多信息,所以我会更新我的答案。
    【解决方案2】:

    希望 Google 能采纳这个,以便下一个用户可以在 3 小时内更快找到这个...

    对我来说,这个错误通过 Chrome 控制台消息表现出来:

    net::ERR_CONTENT_LENGTH_MISMATCH 200
    

    ...只有在我的 html 使用相对路径调用了一些 css 后才引发此错误。

    如上图,通过将windows服务改成可以与桌面交互的本地系统账户解决了问题。

    是否有任何 stackoverflow 超级用户知道如何将该消息放入上面的问题标题中?这就是当 Tomcat “无法读取文件”时 Chrome 显示的内容。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-27
      • 1970-01-01
      • 2011-09-17
      • 1970-01-01
      相关资源
      最近更新 更多