{"id":2251,"date":"2015-06-13T22:47:00","date_gmt":"2015-06-13T14:47:00","guid":{"rendered":"http:\/\/ixyzero.com\/blog\/?p=2251"},"modified":"2015-06-13T22:47:00","modified_gmt":"2015-06-13T14:47:00","slug":"%e5%ae%a2%e6%88%b7%e7%ab%af%e8%b7%b3%e8%bd%ac%e6%9c%8d%e5%8a%a1%e5%99%a8%e7%ab%af%e8%b7%b3%e8%bd%ac","status":"publish","type":"post","link":"https:\/\/ixyzero.com\/blog\/archives\/2251.html","title":{"rendered":"\u5ba2\u6237\u7aef\u8df3\u8f6c&amp;\u670d\u52a1\u5668\u7aef\u8df3\u8f6c"},"content":{"rendered":"<p><strong>\u7f18\u7531\uff1a<\/strong><\/p>\n<p>\u901a\u8fc7 urlrewrite.jar \u5305\u53ef\u4ee5\u5b9e\u73b0URL\u7684\u6539\u5199\u3002\u540c\u65f6\u5728\u6d4b\u8bd5\u7684\u8fc7\u7a0b\u4e2d\u53d1\u73b0HTTP\u72b6\u6001\u7801\u4e3a200\uff0c\u4e0e\u5e38\u89c1\u7684301\/302\u72b6\u6001\u7801\u4e0d\u540c\uff0c\u611f\u5230\u597d\u5947\uff0c\u7ecf\u8fc7\u641c\u7d22\u67e5\u9605\u4e4b\u540e\u6240\u4ee5\u6709\u4e86\u4e0b\u6587\u3002<\/p>\n<p><strong>\u641c\u7d22\u5173\u952e\u5b57\uff1a<\/strong><\/p>\n<ul>\n<li>http \u8df3\u8f6c<\/li>\n<li>http redirect forward\u00a0\u00a0#\u7ed9\u529b\u7684\u641c\u7d22\u5173\u952e\u5b57<\/li>\n<\/ul>\n<p><strong>\u53c2\u8003\u94fe\u63a5\uff1a<\/strong><\/p>\n<ul>\n<li><a href=\"http:\/\/stackoverflow.com\/questions\/1393280\/http-redirect-301-permanent-vs-302-temporary\" target=\"_blank\">http:\/\/stackoverflow.com\/questions\/1393280\/http-redirect-301-permanent-vs-302-temporary<\/a><\/li>\n<li><a href=\"http:\/\/en.wikipedia.org\/wiki\/URL_redirection\" target=\"_blank\">http:\/\/en.wikipedia.org\/wiki\/URL_redirection<\/a><\/li>\n<li><a href=\"http:\/\/xdwangiflytek.iteye.com\/blog\/1337148\" target=\"_blank\">http:\/\/xdwangiflytek.iteye.com\/blog\/1337148 <\/a>\u00a0#\u5168\u9762\u8be6\u7ec6<\/li>\n<li>=<\/li>\n<li><a href=\"http:\/\/stackoverflow.com\/questions\/2047122\/requestdispatcher-interface-vs-sendredirect\" target=\"_blank\">http:\/\/stackoverflow.com\/questions\/2047122\/requestdispatcher-interface-vs-sendredirect <\/a>\u00a0#\u5bf9\u6bd4<\/li>\n<li><a href=\"http:\/\/javarevisited.blogspot.com\/2011\/09\/sendredirect-forward-jsp-servlet.html\" target=\"_blank\">http:\/\/javarevisited.blogspot.com\/2011\/09\/sendredirect-forward-jsp-servlet.html<\/a><\/li>\n<li><a href=\"http:\/\/en.wikipedia.org\/wiki\/Server-side_redirect\" target=\"_blank\">http:\/\/en.wikipedia.org\/wiki\/Server-side_redirect<\/a><\/li>\n<li><a href=\"http:\/\/tuckey.org\/urlrewrite\/manual\/4.0\/\" target=\"_blank\">http:\/\/tuckey.org\/urlrewrite\/manual\/4.0\/<\/a><\/li>\n<\/ul>\n<p><strong>\u53c2\u8003\u89e3\u7b54\uff1a<\/strong><\/p>\n<p>\u5ba2\u6237\u7aef\u8df3\u8f6c\u65f6\u7528 HttpServletResopse \u5bf9\u8c61\u7684 sendRedirect \u51fd\u6570\u5b9e\u73b0\uff0c\u670d\u52a1\u5668\u7aef\u8df3\u8f6c\u662f\u4f7f\u7528 RequestDispather \u5bf9\u8c61\u7684 forward \u65b9\u6cd5\u5b9e\u73b0\u7684\u3002\u8fd9\u4e24\u8005\u4e4b\u95f4\u7684\u533a\u522b\u4e3b\u8981\u4f53\u73b0\u5728\u4e09\u4e2a\u65b9\u9762\uff1a<\/p>\n<ol>\n<li>\u4f7f\u7528\u670d\u52a1\u5668\u7aef\u8df3\u8f6c\u65f6\uff0c\u5ba2\u6237\u6d4f\u89c8\u5668\u7684\u5730\u5740\u680f\u5e76\u4e0d\u4f1a\u663e\u793a\u76ee\u6807\u5730\u5740\u7684URL\uff0c\u800c\u7528\u5ba2\u6237\u7aef\u8df3\u8f6c\u65f6\uff0c\u5730\u5740\u680f\u5f53\u4e2d\u4f1a\u663e\u793a\u76ee\u6807\u8d44\u6e90\u7684URL\uff1b<\/li>\n<li>\u670d\u52a1\u5668\u7aef\u8df3\u8f6c\u662f\u7531\u5ba2\u6237\u7aef\u53d1\u9001\u4e00\u4e2a\u8bf7\u6c42\uff0c\u8bf7\u6c42\u4e00\u4e2a\u670d\u52a1\u5668\u8d44\u6e90[\u5982JSP\u548cServlet]\uff0c\u8fd9\u4e2a\u8d44\u6e90\u53c8\u5c06\u8bf7\u6c42\u8f6c\u5230\u53e6\u4e00\u4e2a\u670d\u52a1\u5668\u8d44\u6e90\uff0c\u7136\u540e\u518d\u7ed9\u5ba2\u6237\u7aef\u53d1\u9001\u4e00\u4e2a\u54cd\u5e94\uff0c\u4e5f\u5c31\u662f\u8bf4<span style=\"color: #ff0000;\"><strong>\u670d\u52a1\u5668\u7aef\u8df3\u8f6c\u662f\u5ba2\u6237\u7aef\u53d1\u9001\u4e00\u6b21\u8bf7\u6c42\uff0c\u670d\u52a1\u5668\u7aef\u7ed9\u51fa\u4e00\u6b21\u54cd\u5e94<\/strong><\/span>\uff1b\u800c\u5ba2\u6237\u7aef\u8df3\u8f6c\u7684\u6d41\u7a0b\u5219\u4e0d\u540c\u3002\u5ba2\u6237\u7aef\u540c\u6837\u662f\u53d1\u9001\u4e00\u4e2a\u8bf7\u6c42\u7ed9\u670d\u52a1\u5668\u7aef\u8d44\u6e90\uff0c\u8fd9\u4e2a\u670d\u52a1\u5668\u8d44\u6e90\u4f1a\u9996\u5148\u7ed9\u5ba2\u6237\u7aef\u4e00\u4e2a\u54cd\u5e94\uff0c\u5ba2\u6237\u7aef\u518d\u6839\u636e\u8fd9\u4e2a\u54cd\u5e94\u5f53\u4e2d\u6240\u5305\u542b\u7684\u5730\u5740\uff0c\u518d\u6b21\u5411\u670d\u52a1\u5668\u7aef\u53d1\u9001\u4e00\u4e2a\u8bf7\u6c42\uff0c\u4e5f\u5c31\u662f\u8bf4<span style=\"color: #0000ff;\"><strong>\u5ba2\u6237\u7aef\u8df3\u8f6c\u662f\u4e24\u6b21\u8bf7\u6c42\uff0c\u4e24\u6b21\u54cd\u5e94<\/strong><\/span>\uff1b<\/li>\n<li>\u5728\u8fdb\u884c\u5ba2\u6237\u7aef\u8df3\u8f6c\u548c\u670d\u52a1\u5668\u7aef\u8df3\u8f6c\u65f6\uff0c\u90fd\u9700\u8981\u6307\u5b9a\u76ee\u6807\u8d44\u6e90\u7684URL\uff0c\u5982\u679c\u8fd9\u4e2a\u8def\u5f84\u4ee5 &#8220;\/&#8221; \u5f00\u59cb\u3002<strong>\u5728\u5ba2\u6237\u7aef\u8df3\u8f6c\u5f53\u4e2d &#8220;\/&#8221; \u4ee3\u8868\u7684\u662f<span style=\"color: #0000ff;\">\u5e94\u7528\u670d\u52a1\u5668\u6839\u76ee\u5f55<\/span><\/strong>\uff0c\u800c<strong>\u5728\u670d\u52a1\u5668\u7aef\u8df3\u8f6c\u5f53\u4e2d\u4ee3\u8868\u7684\u662f<span style=\"color: #ff0000;\">\u5e94\u7528\u7a0b\u5e8f\u6839\u76ee\u5f55<\/span><\/strong>\u3002<\/li>\n<\/ol>\n<p>==<\/p>\n<p>\u5ba2\u6237\u7aef\u8df3\u8f6c\uff1a\u670d\u52a1\u5668\u7aef\u5c06\u8bf7\u6c42\u7ed3\u679c\u8fd4\u56de\u7ed9\u5ba2\u6237\u7aef\uff0c\u5ba2\u6237\u7aef\u5411\u670d\u52a1\u5668\u53d1\u51fa\u53e6\u4e00\u6b21\u8bf7\u6c42\u3002\u5728\u5ba2\u6237\u7aef\u8df3\u8f6c\u8fc7\u7a0b\u4e2d\u662f\u4e24\u6b21\u4e0d\u540c\u7684\u8bf7\u6c42\u3002\u5728\u5730\u5740\u680f\u4e2d\u663e\u793a\u7684\u662f\u6700\u540e\u4e00\u6b21\u8bf7\u6c42\u5730\u5740\u3002<\/p>\n<p>\u5ba2\u6237\u7aef\u8df3\u8f6c\u53ef\u4ee5\u8fdb\u884c\u7ad9\u5916\u8df3\u8f6c\u3002<\/p>\n<p>1\u3001\u94fe\u63a5\u8df3\u8f6c &lt;a href=&#8221;2.jsp&#8221;&gt;&lt;\/a&gt;<\/p>\n<p>2\u3001\u8868\u5355\u63d0\u4ea4<\/p>\n<p>3\u3001Response.sendRedirect(&#8220;2.jsp&#8221;);<\/p>\n<p>4\u3001&lt;mata http-equiv=&#8221;refresh&#8221;, content=&#8221;3;2.jsp&#8221;\/&gt;<\/p>\n<p>5\u3001response.setHeader(&#8220;refresh&#8221;,&#8221; 3;2.jsp&#8221;);<\/p>\n<p>6\u3001\u5ba2\u6237\u7aef\u8df3\u8f6c&#8221;\/&#8221;\u4ee3\u8868<span style=\"color: #0000ff;\"><strong>\u670d\u52a1\u5668\u8ddf\u8def\u5f84\uff08\u5373webapps)<\/strong><\/span><\/p>\n<p>==<\/p>\n<p>\u670d\u52a1\u5668\u7aef\u8df3\u8f6c\uff08\u5bb9\u5668\u5185\u8df3\u8f6c\uff09\uff1a\u80fd\u591f\u81ea\u52a8\u7684\u5728\u670d\u52a1\u5668\u5185\u90e8\u8fdb\u884c\u8df3\u8f6c\uff0c\u8fd9\u79cd\u8df3\u8f6c\u5bf9\u7528\u6237\u6765\u8bf4\u662f\u900f\u660e\u7684\u3002\u4e24\u6b21\u8df3\u8f6c\u662f\u540c\u4e00\u4e2arequest\uff0c\u5728\u5730\u5740\u680f\u4e2d\u663e\u793a\u7684\u662f\u7b2c\u4e00\u6b21\u8bf7\u6c42\u7684\u5730\u5740\u3002\u53ea\u80fd\u8fdb\u884c\u7ad9\u70b9\u5185\u8df3\u8f6c\u3002<\/p>\n<p>1\u3001&lt;jsp:forward page=&#8221;&#8221;\/&gt;<\/p>\n<p>2\u3001pageContext.forward();<\/p>\n<p>3\u3001request.getRequestDispatcher(&#8220;1.jsp&#8221;).forward(request, response);<\/p>\n<p>3\u3001\u670d\u52a1\u5668\u7aef\u8df3\u8f6c&#8221;\/&#8221;\u4ee3\u8868<strong><span style=\"color: #ff0000;\">\u7ad9\u70b9\u6839\u8def\u5f84<\/span><\/strong><\/p>\n<h6>\u4e3b\u8981\u53c2\u8003\uff1a<\/h6>\n<p><a href=\"http:\/\/blog.csdn.net\/trialwalker\/article\/details\/6958531\" target=\"_blank\">http:\/\/blog.csdn.net\/trialwalker\/article\/details\/6958531<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u7f18\u7531\uff1a \u901a\u8fc7 urlrewrite.jar \u5305\u53ef\u4ee5\u5b9e\u73b0URL\u7684\u6539\u5199\u3002\u540c\u65f6\u5728\u6d4b\u8bd5\u7684\u8fc7\u7a0b\u4e2d\u53d1\u73b0HTTP\u72b6\u6001\u7801\u4e3a20 [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[23,25,12],"tags":[22,530,511],"class_list":["post-2251","post","type-post","status-publish","format-standard","hentry","category-knowledgebase-2","category-security","category-tools","tag-http","tag-urlrewritefilter","tag-web"],"views":1995,"_links":{"self":[{"href":"https:\/\/ixyzero.com\/blog\/wp-json\/wp\/v2\/posts\/2251","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ixyzero.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ixyzero.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ixyzero.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/ixyzero.com\/blog\/wp-json\/wp\/v2\/comments?post=2251"}],"version-history":[{"count":0,"href":"https:\/\/ixyzero.com\/blog\/wp-json\/wp\/v2\/posts\/2251\/revisions"}],"wp:attachment":[{"href":"https:\/\/ixyzero.com\/blog\/wp-json\/wp\/v2\/media?parent=2251"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ixyzero.com\/blog\/wp-json\/wp\/v2\/categories?post=2251"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ixyzero.com\/blog\/wp-json\/wp\/v2\/tags?post=2251"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}