2016-10-17 8 views
5

मेरे पास रूट डोमेन के लिए होस्ट की गई वेबसाइट www.example.com कहती है। मैं इस प्रकारविशिष्ट डोमेन मैपिंग आवश्यकता

www.example.com/portal1 mapped to www.portal1.com 
www.example.com/poral2 mapped to www.portal2.com 
www.example.com/portal1/product/product1-> www.portal1.com/product/product1 
www.example.com/portal2/product/product1-> www.portal2.com/product/product1 

कृपया ध्यान दें कि सभी यूआरएल बाएं हाथ की ओर उल्लेख सही ढंग से काम कर रहे हैं (मानचित्रण किया जाता है) के रूप में मानचित्रण कर सकते हैं। पोर्टल परिवर्तनीय हैं इसलिए ऐसे पोर्टलों की संख्या हो सकती है।

मदद

उत्तर

0

अंततः मुझे उस समाधान तक पहुंचने के लिए बहुत सी आरएनडी मिली जो मैं बिल्कुल देख रहा था। दिए गए अधिकांश उत्तर आंशिक रूप से corrert हैं। हालांकि आवश्यकता बहुत विशिष्ट थी और मैंने इसे निम्नलिखित तरीके से हल किया है।

मैंने एक सर्वलेट विकसित किया है जो होस्ट नामों के लिए जांच करता है (वैध होस्टनाम डेटाबेस में रखा जाता है) और वैध यूआरएल पैटर्न और उपयुक्त रूटिंग बनाते हैं। (सर्वर साइड रूटिंग)। इसमें चेकिंग भी शामिल है कि कोई और रूटिंग कैसे होता है जैसे कि कोई www.porta1.com पर जाता है और उस पर क्लिक लिंक उसे www.portal1.com/aboutus पर उतरना चाहिए।

मुझे बहुत मेहनत की जानकारी है, लेकिन वास्तव में काम करने की ज़रूरत है।

1

आप डीएनएस सर्वर के साथ निम्न मानचित्रण ऐसा नहीं कर सकते के लिए अग्रिम धन्यवाद, उन सर्वरों डोमेन नाम केवल संभाल। उदा। www.example.com -> www.portal2.com या example.com -> www.example.com

लेकिन आप 301 redirects के साथ यह मैपिंग कर सकते हैं।

यह question थोड़ा सा समान है।

+0

उत्तर @ जैक वायर के लिए धन्यवाद! 301 रीडायरेक्ट ब्राउज़र पता बार में परिणामी यूआरएल दिखाएंगे। तो उदाहरण के लिए यदि उपयोगकर्ता ब्राउज़र से www.portal1.com का अनुरोध करता है, तो 301 इसे www.example.com/portal1 पर रीडायरेक्ट करेगा। बाद में यूआरएल ब्राउज़र के पता बार पर भी दिखाई देगा। हम चाहते हैं कि उपयोगकर्ता यह महसूस करे कि वह अभी भी www.portal1.com – Sumit

+0

ब्राउज़ कर रहा है, मुझे नहीं पता था कि आप चाहते थे कि रीडायरेक्ट उपयोगकर्ताओं के लिए अदृश्य हो। उस स्थिति में आपको @pedrofb के समाधान का उपयोग करना होगा। यह लक्ष्य यूआरएल पर एक अदृश्य रीडायरेक्ट बनाएगा। –

1

आप Tomcat rewrite module

उपयोग कर सकते हैं (यह किसी भी तैनात किए गए आवेदन पत्र के बिना) बिलाव में एक खाली ROOT संदर्भ बनाएँ। इस सामग्री

RewriteCond %{HTTP_HOST} ^www.portal1.* [NC] 
RewriteRule ^/(.*)$ /portal1/$1 [L] 
RewriteCond %{HTTP_HOST} ^www.portal2.* [NC] 
RewriteRule ^/(.*)$ /portal2/$1 [L] 
0

हाँ साथ निम्न सामग्री

<?xml version='1.0' encoding='UTF-8'?> 
<Context docBase="ROOT" path="/" reloadable="true" crossContext="true"> 
    <Valve className="org.apache.catalina.valves.rewrite.RewriteValve" /> 
</Context> 

सेट भी ROOT/WEB-INF निर्देशिका में rewrite.config फ़ाइल के साथ अपने webapps निर्देशिका में context.xml फ़ाइल रखो, ROOT/META-INF के तहत,। आप वेब/एप्लिकेशन स्तर में यूआरएल रीराइट के माध्यम से रीडायरेक्ट कर सकते हैं, उदाहरण के लिए आईआईएस यूआरएल रीराइट, अपाचे।

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