【发布时间】:2016-06-06 10:36:11
【问题描述】:
在 Ubuntu 16.04 上使用 tomcat-8.0.32。
我已将 /etc/tomcat8/server.xml 配置为允许访问 2 个不同的 dspace 实例,如下所示:
<!-- DSpace Instance A -->
<Context path="/dspaceA" docBase="/home/pkaramol/Workspace/dspace/dspace-installation/webapps/jspui" reloadable="true" />
<Context path="/solr" docBase="/home/pkaramol/Workspace/dspace/dspace-installation/webapps/solr" reloadable="true">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="my\.static\.ip\.addr|127\.0\.0\.1|123\.123\.123\.123|111\.222\.233\.d+"/>
<Parameter name="LocalHostRestrictionFilter.localhost" value="false" override="false" />
</Context>
<!-- DSpace Instance B -->
<Context path="/dspaceB" docBase="/home/pkaramol/Workspace/tomcat-deployments/dspaceB" >
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="my\.static\.ip\.addr|127\.0\.0\.1|123\.123\.123\.123|111\.222\.233\.d+"/>
<Parameter name="LocalHostRestrictionFilter.localhost" value="false" override="false" />
</Context>
但是,尽管实例 A 可访问,但实例 B 返回 404 错误。
奇怪的是,在 catalina.out 上,我收到了关于实例 B 的警告。
警告:Web 应用程序 [dspaceB] 似乎已启动 名为 [TestScheduler_Worker X] 的线程,但未能阻止它。这个 很可能会造成内存泄漏。
警告重复 1
所以webapp dspaceB确实是被tomcat8识别的。
404 错误是怎么来的?
编辑:一些新发现:
当从 server.xml 删除 DSpace Instance B 条目并将其移动到 tomcat8 (/var/lib/tomcat8/webapps/) 的默认 webapps 部署目录时,我不再收到 404 错误,而是 Java.lang.OutOfMemoryError: Java heap space 异常和常量
内存使用率低,降落伞不存在,您的系统可能开始出现故障
警告catalina.out
【问题讨论】:
标签: java tomcat http-status-code-404 tomcat8 dspace