Sử dụng tomcat, làm cách nào để nhận được yêu cầu http://www.mydomain.com chuyển hướng đến http://www.mydomain.com/somethingelse/index.jsp ? tôi thậm chí đã không quản lý để có được một index.html để hiển thị từ http://mydomain.com .
Sử dụng tomcat, làm cách nào để nhận được yêu cầu http://www.mydomain.com chuyển hướng đến http://www.mydomain.com/somethingelse/index.jsp ? tôi thậm chí đã không quản lý để có được một index.html để hiển thị từ http://mydomain.com .
Câu trả lời:
Đặt tên ứng dụng web của bạn là WAR “ROOT.war” hoặc chứa thư mục “ROOT”
Bạn có thể làm điều này: Nếu cài đặt tomcat của bạn là mặc định và bạn chưa thực hiện bất kỳ thay đổi nào, thì cuộc chiến mặc định sẽ là ROOT.war. Vì vậy, bất cứ khi nào bạn gọi http://yourserver.example.com/, nó sẽ gọi index.htmlhoặc index.jspcủa tệp WAR mặc định của bạn. Thực hiện các thay đổi sau trong webapp/ROOTthư mục của bạn để chuyển hướng các yêu cầu đến http://yourserver.example.com/somewhere/else:
Mở webapp/ROOT/WEB-INF/web.xml, xóa mọi ánh xạ servlet với đường dẫn /index.htmlhoặc /index.jspvà lưu.
Loại bỏ webapp/ROOT/index.html, nếu nó tồn tại.
Tạo tệp webapp/ROOT/index.jspvới dòng nội dung này:
<% response.sendRedirect("/some/where"); %>
hoặc nếu bạn muốn chuyển hướng đến một máy chủ khác,
<% response.sendRedirect("http://otherserver.example.com/some/where"); %>
Đó là nó.
Hãy xem UrlRewriteFilter về cơ bản là một triển khai dựa trên java của mod_rewrite của Apache.
Bạn sẽ cần giải nén nó vào ROOTthư mục trong thư mục Tomcat của bạn webapps; sau đó bạn có thể định cấu hình chuyển hướng đến bất kỳ ngữ cảnh nào khác trong WEB-INF/urlrewrite.xmltệp cấu hình của nó .
Quy trình kiểm tra và làm việc:
Di chuyển đường dẫn tệp
..\apache-tomcat-7.0.x\webapps\ROOT\index.jsp
xóa toàn bộ nội dung hoặc khai báo các dòng mã bên dưới ở đầu index.jsp
<% response.sendRedirect("http://yourRedirectionURL"); %>
Xin lưu ý rằng trong tệp jsp, bạn cần bắt đầu dòng trên bằng <% và kết thúc bằng%>
Tôi đã làm gì:
Tôi đã thêm dòng sau vào bên trong ROOT / index.jsp
<meta http-equiv="refresh" content="0;url=/somethingelse/index.jsp"/>
<% response.sendRedirect("/some/where"); %>và nó hoạt động với HTTPS ngay bây giờ.
Trong Tomcat 8, bạn cũng có thể sử dụng van viết lại
RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^/(.*)$ /somethingelse/index.jsp
Để thiết lập van viết lại, hãy xem tại đây:
http://tonyjunkes.com/blog/a-brief-look-at-the-rewrite-valve-in-tomcat-8/