2008-11-07 14 views
5

पर एकाधिक डोमेन, एक ही वेब एप्लिकेशन IIS 6 पर, क्या एक ही वेब एप्लिकेशन पर इंगित करने वाले एकाधिक डोमेन नाम होना संभव है, और डोमेन नाम के आधार पर वेब एप्लिकेशन के भीतर सशर्त रूप से सीएसएस की सेवा करना संभव है?आईआईएस 6

मुझे उसी वेब एप्लिकेशन पर सैकड़ों अलग-अलग "खाल" होस्ट करने की आवश्यकता है, त्वचा को डोमेन नाम पर निर्भर होने के साथ, और मैं वास्तव में कई वेब एप्लिकेशन लॉन्च नहीं करना चाहता हूं।

उत्तर

7

+1 कई पहचान जोड़ने के लिए rhinof करने के लिए +1, लेकिन एक HttpModule बनाना हत्या पर थोड़ा सा है। आप अनुरोध की सामग्री की जांच करके मास्टर पेज में टैग का URL आसानी से स्विच कर सकते हैं। हेडर ["HOST"]

+0

यह बहुत ही आशाजनक लग रहा है। –

+0

धन्यवाद। मुझे खेद है कि इसे बंद करने में मुझे इतना लंबा लगा। –

2

1) वांछित डोमेन नाम वेब साइट टैब के उन्नत प्रॉपर्टी पेज में वेबसाइट पहचानकर्ता के रूप में जोड़ें।

2) के नक्शे aspnet_isapi.dll

3) को .css विस्तार एक HttpModule कि डोमेन नाम

4 के आधार पर .css अनुरोधों के लिए यूआरएल बारे में फिर से होगा लिखना) के माध्यम से अपने मॉड्यूल सक्षम web.config

+0

क्या एपीआई के माध्यम से ऐसा करने का कोई तरीका है? सैकड़ों होंगे। –

+0

यदि आपके पास केवल आपके सर्वर पर एक साइट है। साइट को डिफ़ॉल्ट होने के लिए सेट करें और कोई पहचान सेट न करें। डोमेन के बावजूद सभी अनुरोध डिफ़ॉल्ट वेबसाइट पर जाएंगे। –

+0

@Pittsburgh DBA एपीआई के माध्यम से आप COM के माध्यम से या देशी WIN32 API का उपयोग कर रहे हैं और प्रबंधित .NET वातावरण के माध्यम से नहीं? यदि ऐसा है तो आप एक देशी आईएसपीआई फ़िल्टर लिख सकते हैं जो पुनर्लेखन करेगा और इसे आईआईएस के साथ पंजीकृत करेगा। Google निम्नलिखित कुंजी शब्दों पर isapi फ़िल्टर iis – rhinof

1

यदि आप थीम का उपयोग करते हैं, तो आप पेज में शामिल कर सकते हैं, इस प्रकार पृष्ठ में प्रवेश कर सकते हैं। अनुरोध में सर्वर के मूल्य के आधार पर PRInInit। [url "] (नोट, डोमेन नाम प्राप्त करने के लिए एक बेहतर सर्वर चर हो सकता है, इसे देखो)।

यदि आप थीम का उपयोग नहीं कर रहे हैं, तो आप उसी सर्वर चर की जांच करके प्रोग्रामिक रूप से सीएसएस फ़ाइल को स्वैप कर सकते हैं।

मास्टरपेज यहां आपका मित्र बनने जा रहे हैं।

आशा है कि आपको सही दिशा में दिखाएगा। यह संभव और आम है।

+0

मैं विषयों से परिचित नहीं हूँ। अब देख रहे हैं! –

1

यदि आपके पास साइट पर अलग-अलग मूल सामग्री होने वाली है तो मैं सुझाव देता हूं कि एक उपयोगकर्ता पहचानकर्ता को यह पता लगाने के लिए कि कौन सी साइट पर उपयोगकर्ता है और उस पहचानकर्ता के संदर्भ में कहीं भी डीबी में अपना डेटा डालें। यदि प्रत्येक उदाहरण अद्वितीय है तो ऐप को विस्तारित करने का यह सबसे आसान तरीका है।

आप इसे कक्षा में डाल सकते हैं और यह पता लगाने के लिए एक आम पैटर्न है कि सामान कहां मानचित्र करना चाहिए। मेरा सुझाव है कि एक बार जब आप कैश करने के लिए मानचित्रण को जानते हैं और फिर आप हजारों ऐप्स या डीबी कॉल की विलम्ब के बिना जो भी चाहते हैं वह कर पाएंगे।

आपको इस पैरामीटर को किसी भी सामान्य डीबी कॉल पर भी जोड़ना होगा ताकि आपको होस्ट किए जा रहे डोमेन के लिए केवल परिणाम मिल सकें। मुझे इसके साथ थोड़ा सा अनुभव मिला है, इसलिए अगर आप कुछ विशिष्ट कोडिंग उदाहरण देखना चाहते हैं तो बस कुछ टिप्पणियां छोड़ दें।

आप इस तकनीक को किसी भी फ़ाइल, सीएसएस स्टाइलशीट या रेफरेंसिंग उद्देश्यों के लिए ऑब्जेक्ट पर लागू कर सकते हैं।

+0

बहुत बहुत धन्यवाद। यह एक अंतर्दृष्टिपूर्ण टिप्पणी है। मैं अभी भी एक "स्वीकृत" उत्तर लेने की कोशिश कर रहा हूं। आपको वोट दिया –

1

हां, यह करना आसान होना चाहिए। मैं आईआईएस में होस्ट हेडर का उपयोग करके अपने ऐप में डोमेन नाम मैप करने के दृष्टिकोण के साथ जाऊंगा। फिर, जैसा कि मार्टिन ने कहा, स्टाइलशीट स्विच करने के लिए अपने ऐप में अनुरोध। हेडर ["HOST"] पूछताछ करें।

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