Java Jetty 7-禁用根文件夹中的目录列表/
我有很多生产服务器在每个服务器上运行RMI应用程序,还有4个以上的Java Web应用程序,例如:Java Jetty 7-禁用根文件夹中的目录列表/,java,jetty,Java,Jetty,我有很多生产服务器在每个服务器上运行RMI应用程序,还有4个以上的Java Web应用程序,例如: Server A: RMI app by JNLP file; webapp_1 (connected by RMI with local RMI app); webapp_2 (connected by RMI with local RMI app); webapp_3 (connected by RMI with local RMI app); webapp_4 (connected by R
Server A:
RMI app by JNLP file;
webapp_1 (connected by RMI with local RMI app);
webapp_2 (connected by RMI with local RMI app);
webapp_3 (connected by RMI with local RMI app);
webapp_4 (connected by RMI with local RMI app);
Server B:
...the same..OK
所有用户在默认上下文中直接通过8080端口(直接到Jetty)访问此服务器,例如“主区域”,在该区域,用户可以通过一些html链接访问所有应用程序(RMI应用程序、webapp_1、webapp_2等)
当某些用户访问“/”页面时,例如:
www.foo.com:8080/
main-area/
webapp_1/
webapp_2/
webapp_3/
...
Jetty返回一个包含所有应用程序的列表(就像Apache的目录列表一样)
是否有方法阻止它,或重定向到“主区域”上下文?为该位置创建index.html文件 这将被提供,因此不需要生成列表
然后,您可以在其中放置一个简单的重定向,如果浏览器不尊重重定向,还可以添加一个普通链接 为该位置创建index.html文件 这将被提供,因此不需要生成列表 然后,您可以在其中放置一个简单的重定向,如果浏览器不尊重重定向,还可以添加一个普通链接 多亏了by解决方案: 我使用一个index.jsp创建了一个基本的动态Web应用程序,其中包含jsp HTML/JS重定向:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<meta http-equiv="refresh" content="1;url=bar/index.jsp">
<script type="text/javascript">
window.location.href = "bar/index.jsp"
</script>
<title>Page Redirection</title>
</head>
<body>
If you are not redirected automatically, follow the <a href='bar/index.jsp'>main area</a>
</body>
</html>
window.location.href=“bar/index.jsp”
页面重定向
如果没有自动重定向,请按照
我部署为“ROOT.war”,并在“…jetty/contexts/”中配置了一个“ROOT.xml”:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
<Set name="contextPath">/</Set>
<Set name="war"><SystemProperty name="jetty.home" default="."/>/webapps/ROOT.war</Set>
</Configure>
/
/webapps/ROOT.war
多亏了by解决方案:
我使用一个index.jsp创建了一个基本的动态Web应用程序,其中包含jsp HTML/JS重定向:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<meta http-equiv="refresh" content="1;url=bar/index.jsp">
<script type="text/javascript">
window.location.href = "bar/index.jsp"
</script>
<title>Page Redirection</title>
</head>
<body>
If you are not redirected automatically, follow the <a href='bar/index.jsp'>main area</a>
</body>
</html>
window.location.href=“bar/index.jsp”
页面重定向
如果没有自动重定向,请按照
我部署为“ROOT.war”,并在“…jetty/contexts/”中配置了一个“ROOT.xml”:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
<Set name="contextPath">/</Set>
<Set name="war"><SystemProperty name="jetty.home" default="."/>/webapps/ROOT.war</Set>
</Configure>
/
/webapps/ROOT.war
不匹配的webapp上下文列表作为
,以保持与Servlet规范的一致性
禁用DefaultHandler:
如果您只需要一个简单的404,而DefaultHandler不提供任何信息,那么只需在${jetty.home}/etc/jetty.xml
显示“/”
(根)上下文的静态内容:
如果希望根上下文“/”
(root)显示其他内容,请创建${jetty.home}/webapps/root
目录,并在其中放置index.html文件
[jetty-distribution-7.6.13.v20130916]$cat webapps/ROOT/index.html
这是根
这将部署一个静态内容webapp,您可以将任何想要的内容、图像、css等放到其中
自动将“/”
(根目录)重定向到另一个路径:
注意:这不会与上面的${jetty.home}/webapps/ROOT
选项、his this选项或that选项同时工作,但不能同时工作
如果希望Jetty自动重定向到另一个URL,请使用重写处理程序
确保已启用“重写”选项,并包含一组重写规则xml
[jetty-distribution-7.6.13.v20130916]$grep rewrite start.ini
选项=服务器、jsp、jmx、资源、websocket、ext、重写
etc/jetty-rewrite.xml
接下来,您将要定义您的重写规则
${jetty.home}/etc/jetty rewrite.xml
的内容,用于将访问从“/”
重定向到“/test/”
真的
假的
请求路径
^/$
/试验/
不匹配的webapp上下文列表作为
,以保持与Servlet规范的一致性
禁用DefaultHandler:
如果您只需要一个简单的404,而DefaultHandler不提供任何信息,那么只需在${jetty.home}/etc/jetty.xml
显示“/”
(根)上下文的静态内容:
如果希望根上下文“/”
(root)显示其他内容,请创建${jetty.home}/webapps/root
目录,并在其中放置index.html文件
[jetty-distribution-7.6.13.v20130916]$cat webapps/ROOT/index.html
这是根
这将部署一个静态内容webapp,您可以将任何想要的内容、图像、css等放到其中
自动将“/”
(根目录)重定向到另一个路径:
注意:这不会与上面的${jetty.home}/webapps/ROOT
选项、his this选项或that选项同时工作,但不能同时工作
如果希望Jetty自动重定向到另一个URL,请使用重写处理程序
确保已启用“重写”选项,并包含一组重写规则xml
[jetty-distribution-7.6.13.v20130916]$grep rewrite start.ini
选项=服务器、jsp、jmx、资源、websocket、ext、重写
etc/jetty-rewrite.xml
接下来,您将要定义您的重写规则
${jetty.home}/etc/jetty rewrite.xml
的内容,用于将访问从“/”
重定向到“/test/”
真的
假的
请求路径
^/$
/试验/
制作一个包含index.html和jetty配置文件的war文件,告诉它