我有一個Apache服務器,它基於重寫映射文件應用mod_rewrite
和mod_proxy
。用戶只是訪問服務器,並不知道他被重定向到提供源文件的另一臺服務器。一切都由apache在後臺處理。從一個servlet重定向而不更改url?
因爲我現在想要更復雜的重定向,我想了解java/jsf/servlet中的一些解決方案。
我可以從servlet實現同一個url的強大重新映射嗎? 如果是這樣,我怎麼開始?
我有一個Apache服務器,它基於重寫映射文件應用mod_rewrite
和mod_proxy
。用戶只是訪問服務器,並不知道他被重定向到提供源文件的另一臺服務器。一切都由apache在後臺處理。從一個servlet重定向而不更改url?
因爲我現在想要更復雜的重定向,我想了解java/jsf/servlet中的一些解決方案。
我可以從servlet實現同一個url的強大重新映射嗎? 如果是這樣,我怎麼開始?
如果是在同一臺機器上,你可以使用forward
:
request.getRequestDispatcher("pathToNewServletOrJsp").forward(request, response);
(與相對路徑)和URL將不會改變,否則你必須使用sendRedirect
:
response.sendRedirect("pathToNewServletOrJsp");
在這種情況下 - URL將會改變。
.htaccess
文件中創建301 redirect規則。