2009-09-01 21 views
53

टॉमकैट का उपयोग करके, http://www.mydomain.com के लिए http://www.mydomain.com/somethingelse/index.jsp पर रीडायरेक्ट करने के लिए मुझे अनुरोध कैसे प्राप्त होगा? मैंने http://mydomain.com से प्रदर्शित करने के लिए index.html प्राप्त करने में भी कामयाब नहीं रहा है।टॉमकैट बेस यूआरएल रीडायरेक्शन

+0

के साथ समाप्त करने की जरूरत है एक कारण .htaccess है या ISAPI काम नहीं होगा? –

+4

@NonaUrbiz: .htaccess अपाचे http सर्वर विशिष्ट नहीं है और टॉमकैट के साथ काम नहीं करता है? –

+0

किसी और के लिए टॉमकैट अपने दस्तावेज़ों को देखने की अनुशंसा नहीं करता है - https://wiki.jenkins-ci.org/display/JENKINS/Running+Jenkins+behind+Apache – KCD

उत्तर

19

नाम अपने webapp युद्ध "ROOT.war" या युक्त फ़ोल्डर "रूट"

17

UrlRewriteFilter पर एक नज़र जो अनिवार्य रूप से अपाचे के mod_rewrite के एक जावा आधारित कार्यान्वयन है ले लो।

आपको इसे अपने टॉमकैट के webapps फ़ोल्डर के तहत ROOT फ़ोल्डर में निकालने की आवश्यकता होगी; फिर आप रीडायरेक्ट को WEB-INF/urlrewrite.xml कॉन्फ़िगरेशन फ़ाइल के भीतर किसी भी अन्य संदर्भ में कॉन्फ़िगर कर सकते हैं।

+0

UrlRewriteFilter तेज़ है और मेरे लिए अच्छा काम करता है। [मैनुअल] (http: //urlrewritefilter.googlecode।com/svn/trunk/src/doc/manual/4.0/index.html) में कुछ शानदार विकल्प हैं और [यह ब्लॉग पोस्ट] (http://nematodes.org/martin/2010/02/04/301- स्थायी- प्रत्यक्ष -with-tomcat-howto /) के साथ कुछ अच्छी जानकारी भी है। – cwd

76

आप यह कर सकते हैं: यदि आपकी टोमकैट स्थापना डिफ़ॉल्ट है और आपने कोई बदलाव नहीं किया है, तो डिफ़ॉल्ट युद्ध ROOT.war होगा। इस प्रकार जब भी आप http://yourserver.example.com/ पर कॉल करेंगे, तो यह आपकी डिफ़ॉल्ट WAR फ़ाइल के index.html या index.jsp पर कॉल करेगा। http://yourserver.example.com/somewhere/else करने के लिए अनुरोध रीडायरेक्ट करने के लिए अपने webapp/ROOT फ़ोल्डर में निम्नलिखित परिवर्तन करें:

  1. ओपन webapp/ROOT/WEB-INF/web.xml, पथ /index.html या /index.jsp, के साथ किसी भी सर्वलेट मैपिंग निकालने और सहेजें।

  2. यदि यह मौजूद है, तो webapp/ROOT/index.html हटाएं।

  3. सामग्री की इस पंक्ति के साथ फ़ाइल webapp/ROOT/index.jsp बनाएँ:

    <% response.sendRedirect("/some/where"); %> 
    

    या यदि आप एक अलग सर्वर के लिए निर्देशित करने के लिए चाहते हैं,

    <% response.sendRedirect("http://otherserver.example.com/some/where"); %> 
    

यह है कि।

+7

केवल आवश्यक कदम # 2। टॉमकैट 7 पर परीक्षण किया गया। – dustmachine

+11

sendRedirect कमांड मेरे लिए आवश्यक था। index.jsp में केवल शामिल हैं: <% respond.sendRedirect ("/ jasperserver"); %> –

+2

किसी भी jsp scriptlet –

8

मैं क्या किया:

मैं जड़ के अंदर निम्नलिखित लाइन जोड़ा/index.jsp

<meta http-equiv="refresh" content="0;url=/somethingelse/index.jsp"/> 
+2

यह वास्तव में आपके विश्लेषण डेटा को खराब कर सकता है, क्योंकि रेफ़रल खो जाएगा। – sbichenko

+0

यह काम करेगा, लेकिन यह करने का तरीका नहीं है। – AdrianRM

+0

इस विधि का एक छोटा सा लाभ यह index.jsp – Edd

5

परीक्षण किया और कार्य प्रक्रिया:

गोटो फ़ाइल पथ ..\apache-tomcat-7.0.x\webapps\ROOT\index.jsp

पूरी सामग्री को हटाएं या index.jsp

के शीर्ष पर कोड की नीचे दी गई पंक्तियां घोषित करें

<% response.sendRedirect("http://yourRedirectionURL"); %>

कृपया ध्यान दें कि jsp फ़ाइल में आप <% के साथ ऊपर लाइन शुरू करने और%>

संबंधित मुद्दे