我不是jsp开发人员,但我想在一些开源软件中对jsp页面做一个小调整。
我想要做的就是找出我以前访问该页面的网址,让我们说https://old.example.com,如果我这样做,那么我想将用户重定向到https://new.example.com,但是我不想明显进入重定向循环......
我该怎么做......
答案 0 :(得分:5)
您可以尝试这样的事情:
<%
if(request.getRequestURL().toString().equals("https://old.example.com")){
String redirectURL = "https://new.example.com";
response.sendRedirect(redirectURL);
}
%>
如果您不喜欢JSP中的java代码(这是一种糟糕的编程习惯),您可以使用JSTL尝试这样的事情
<c:if test="${pageContext.request.requestURL == 'https://old.example.com'}">
<jsp:forward page="https://new.example.com"/>
</c:if>
答案 1 :(得分:2)
看起来更像是控制器的工作,而不是视图。
被修改
但如果你真的想,你可以尝试这样的事情(假设你使用JSTL):
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<c:if test="${fn:contains(pageContext.request.requestURL, 'localhost')}">
<c:redirect url="http://google.com"/>
</c:if>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<c:if test="${fn:contains(pageContext.request.requestURL, 'localhost')}">
<c:redirect url="http://google.com"/>
</c:if>