2009-05-22 12 views
8

मुझे मौजूदा आईआईएस 6.0 वेबसाइट पर कार्यक्षमता जोड़ने का कार्य दिया गया है। ऐसा करने के लिए, मैंने एक एएसपी.नेट एमवीसी एप्लीकेशन बनाया है। जब यह अपनी साइट के रूप में तैनात किया जाता है, तो यह ठीक काम करता है, लेकिन जब मैं इसे वास्तविक साइट पर वर्चुअल निर्देशिका के रूप में तैनात करने की कोशिश करता हूं तो इसे काम नहीं करता है।मेरी आईआईएस वर्चुअल निर्देशिका http: // localhost के साथ क्यों काम करती है लेकिन http: // computername नहीं?

सर्वर का नाम CWEBSERVER है, और आईपी 1 9 2.168.1.11 है। आईआईएस प्रबंधक को देख से, इस साइट संरचना है:

(Default Website) (root) 
    - PRODUCTION (vDir) 
    - CONTENT (not a vDir) 
    - DATAFOLDER (vDir, contains MVC app, just added by me, not working) 

अजीब बात यह है कि जब मैं निम्नलिखित यूआरएल टाइप सर्वर पर किसी ब्राउज़र से यह काम करता है:

http://localhost/DATAFOLDER/account.aspx 
http://127.0.0.1/DATAFOLDER/account.aspx 
http://192.168.1.11/DATAFOLDER/account.aspx 

निम्न URL (जो एक है कि मैं काम करने की जरूरत) नहीं करता है:

http://CWEBSERVER/DATAFOLDER/account.aspx 

त्रुटि मैं हो रही है कि "संसाधन नहीं मिला जा सकता है।"

करीब देखने के बाद, मुझे एहसास हुआ कि http://CWEBSERVER करने के लिए अनुरोध उत्पादन vdir करने जा रहे हैं, लेकिन http://localhost या http://192.168.1.11 वेबसाइट के रूट करने जा रहे हैं करने के लिए कहता है। मुझे लगता है कि यह मूल साइट डिजाइनर द्वारा कुछ सेटअप है। मुझे यकीन नहीं है कि इस सेटअप को कैसे बदला जाए, लेकिन मुझे नहीं लगता कि मैं इसे किसी भी तरह बदल सकता हूं क्योंकि असल में अन्य निर्देशिकाओं का एक टन प्रभावित होगा। दूसरी बात जो मैं इंगित करना चाहता था वह यह है: सामग्री फ़ोल्डर http://CWEBSERVER/CONTENT पर जाकर पहुंच योग्य है। यह वास्तव में अजीब है क्योंकि मैंने सोचा था कि http://CWEBSERVER ने मुझे रूट पर इंगित किया है, इसलिए मुझे नहीं लगता कि "/ CONTENT" वास्तव में सामग्री फ़ोल्डर में पहुंच पाएगा।

अब मेरी समस्या यह है: मैं अपने डेटाफ़ोल्डर को http://CWEBSERVER/DATAFOLDER के माध्यम से कैसे सुलभ कर सकता हूं? मुझे लगता है कि मुझे केवल उत्पादन VDir के के अंदर डेटाफ़ोल्डर vDir डालना चाहिए। मैं इसे करने की कोशिश की, और स्थानीय होस्ट का उपयोग कर या आईपी यह अभी भी माध्यम से सुलभ है:

http://localhost/PRODUCTION/DATAFOLDER/account.aspx 
http://127.0.0.1/PRODUCTION/DATAFOLDER/account.aspx 
http://192.168.1.11/PRODUCTION/DATAFOLDER/account.aspx 

जब मैं CWEBSERVER उपयोग करते हैं, लेकिन यह अभी भी विफल रहता है:

http://CWEBSERVER/DATAFOLDER/account.aspx 

त्रुटि अभी भी "संसाधन नहीं किया जा सकता है मिल गया।"। क्या कोई इस पर रोशनी डाल सकता है?

  1. कैसे http://localhost जड़ तक जाना होता है, और http://CWEBSERVER उत्पादन vdir पर जाएँ: विशेष रूप से, मैं इन प्रश्न हैं? मैं इस सेटिंग को कहां बदल सकता हूं?
  2. "http://localhost/PRODUCTION/DATAFOLDER/account.aspx" क्यों काम करेगा लेकिन http://CWEBSERVER/DATAFOLDER/account.aspx "?

इस सवाल (जिसे इनाम करने के लिए सम्मानित किया जाएगा) के लिए स्वीकार किए जाते हैं जवाब तो मैं http://CWEBSERVER/DATAFOLDER/account.aspx उपयोग कर सकते हैं इसे बनाने के लिए सक्षम होने के लिए की आवश्यकता होगी। धन्यवाद!

+0

आपने क्या त्रुटि हो रही है पहुँच सकता है? –

+0

पिंग cwebserver और अपने यूआरएल में उस आईपी पते का उपयोग करें और देखें कि क्या यह काम करता है। यह आपको बताएगा कि क्या यह एक डीएनएस/फ़ायरवॉल समस्या है या यदि इसकी आईआईएस समस्या –

उत्तर

11

अधिकतर आपके पास आईआईएस केवल आईपी पते से जुड़ा हुआ है। आईआईएस प्रबंधक पर जाएं, फिर वेबसाइट पर संपत्तियों पर जाएं। फिर, वेब साइट टैब से, गुणों पर जाएं।

उस होस्ट हेडर मान के लिए एक पहचान जोड़ें।

यदि आवश्यक हो तो आप कई बाइंडिंग जोड़ सकते हैं।

अद्यतन

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

मुझे सच में लगता है कि आपको इसे थोड़ा साफ करने की आवश्यकता है। पहली बात यह है कि मैं यह तय करूँगा कि सब कुछ वास्तव में कैसे पहुंचा जा सकता है। दूसरे शब्दों में, जब वे http://www.mysite.org/ टाइप करते हैं तो यह क्या माना जाता है? यदि यह उत्पादन निर्देशिका है, तो एक नया साइट बनाएं और इसे उत्पाद निर्देशिका में इंगित करें, फिर इसके अंतर्गत अपना डेटाफ़ोल्डर वर्चुअल ऐप बनाएं।

+0

टिप के लिए धन्यवाद। जब मैं पहचान की सूची देखता हूं, तो मुझे लगता है कि पोर्ट 80 के लिए मैं "डिफ़ॉल्ट" हूं। मैंने एक गुच्छा भी अधिक जानकारी जो मुझे मिली। आपकी मदद के लिए आपको धन्यवाद! मैं आपको कुछ कहने के लिए बहुत गर्वपूर्ण हूं। – skb

+0

आपके अपडेट के लिए धन्यवाद, क्रिस। मैंने उत्पादन vDir के तहत डेटाफ़ोल्डर vDir जोड़ने की कोशिश की, लेकिन किसी कारण से मैं अभी भी www.mysite.org/DATAFOLDER का उपयोग करके इसे एक्सेस करने में असमर्थ हूं। स्थानीयहोस्ट/उत्पादन/डेटाफ़ोल्डर हालांकि काम करता है। मुझे लगता है कि यह मदद कर सकता है अगर मैं पहले यह पता लगा सकता हूं कि क्यों www.mysite.org को उत्पादन vDir पर निर्देशित किया जाता है, लेकिन स्थानीयहोस्ट वेबसाइट की जड़ पर जाता है। शायद अगर मैं इस अंतर को समझ सकता हूं, तो मैं देख सकता था कि चीजें अभी भी काम नहीं कर रही हैं। कोई विचार? – skb

+0

आपको वास्तव में अपने बाइंडिंग के साथ शुरू करना चाहिए। यह प्रोडक्शन के लिए वर्चुअल डीआईआर की तरह लगता है जब यह नहीं होना चाहिए था। एक नई साइट के साथ शुरू करें, इसे www.mysite.org बाध्यकारी दें और इसे अपनी उत्पादन निर्देशिका में इंगित करें। फिर उसके नीचे एक वर्चुअल निर्देशिका जोड़ें जो आपके डेटाफ़ोल्डर को इंगित करता है। – NotMe

0

जोड़ें '192.168.1.11 cwebserver'% Windir%/system32/ड्राइवरों/etc/hosts

+1

धन्यवाद, लेकिन यह समस्या नहीं है। इसे कई अन्य मशीनों से भी सुलभ होना चाहिए। – skb

1

क्रिस के रूप में ऐसा करने के लिए जीवंत कहा और अन्य होस्ट नाम के लिए अधिक बाइंडिंग जोड़ सकते हैं या करने के लिए सेटिंग्स के साथ एक नई साइट को जोड़ने एक ही सामग्री आईआईएस होस्ट हेडर जानकारी देखकर प्रतिक्रिया देता है और यदि आपके पास पोर्ट 80 के लिए बाध्यकारी के साथ केवल डिफ़ॉल्ट वेब साइट है तो यह सभी संभावित शीर्षकों को संभाल नहीं पाएगी।

यदि नाम आपकी कंपनी के लिए मशीन नाम या आंतरिक DNS प्रविष्टि की तरह आंतरिक है तो आप डिफ़ॉल्ट बाध्यकारी नौकरी करने के साथ दूर हो सकते हैं। यदि यह परीक्षण में काम नहीं करता है तो उस स्थिति के लिए बाध्यकारी जोड़ें (CWEBSERVER या mysite.org)। यदि आप इसके बारे में दोनों तरीकों से काम करते हैं तो www के साथ और बिना इसका परीक्षण करें।

एक ही सामग्री के लिए आईआईएस में कई "साइट्स" जोड़ने के लिए बहुत नकारात्मक नहीं है। उदाहरण के लिए आप

mysite.org /PRODUCTION/DATAFOLDER/index.html की ओर इशारा किया

और

marketingsite.com /PRODUCTION/DATAFOLDER/index.html

तब की ओर इशारा किया हो सकता है आप अलग-अलग एसएसएल सेटिंग्स जैसी चीजें कर सकते हैं और इसी तरह। मेरे वेब सर्वर पर कुछ भी गलत नहीं होने तक डिफ़ॉल्ट वेब साइट पर कुछ भी हिट नहीं होता है (जैसे कि मैंने एक नया बाहरी आईपी पता स्थापित किया है और अभी तक बाइंडिंग को संशोधित नहीं किया है)।

अपना जहर उठाएं लेकिन अनिवार्य रूप से आपको केवल आईआईएस में सेटिंग्स जोड़नी पड़ेगी जब तक कि यह सभी संभव पतों को जिस तरह से आप चाहते हैं उसे संभाल न ले ले।

+0

मैं जो संदर्भ देता हूं उसके विपरीत करने की कोशिश कर रहा हूं। मैं एक ही सामग्री के लिए कई "साइट्स" नहीं चाहता हूं, मुझे एक साइट में अलग सामग्री "विलय" चाहिए। मेरे पास एक डिफ़ॉल्ट साइट है। इस साइट में एक उत्पादन vDir है जो "www.mysite.org" इंगित करता है (बीटीडब्लू, मैं यह नहीं समझ सकता कि यह वीडीआईआर "www.mysite.org" की "मूल" कैसे बनता है लेकिन "लोकलहोस्ट" के लिए यह है नहीं, मुझे vDir या साइट के लिए इसके लिए कोई सेटिंग नहीं दिखाई दे रही है)। मुझे localhost की परवाह नहीं है, मुझे बस एक अलग vDir के लिए mysite.org/DATAFOLDER बिंदु होना चाहिए। क्या यह संभव है? – skb

5

हालांकि मैं पूरी उत्तर सूची में नहीं गया हूं, मैं इस समाधान में निम्नलिखित तरीके से आया हूं। मेरे वेब पेज लिंक localhost के साथ काम कर रहे हैं लेकिन आईपी या कंप्यूटर नाम के साथ नहीं। इसमें कोई त्रुटि नहीं है, खासकर ग्रेट आईई (****) के साथ।

इसे ठीक करने के लिए मैंने आईई के ट्रस्टेड साइट्स में साइट को जोड़ा।

यह कुछ निराशा को कम करने में मदद करता है!

+0

हां, यह बहुत निराशा रोकता है! धन्यवाद! – DrCord

2

मुझे एक ही समस्या थी जिसे मेरे अस्थायी आईआईएस सर्वर को एक स्थिर आईपी असाइन करके हल किया गया है। (मैंने गतिशील रूप से आवंटित एक के रूप में एक ही आईपी पता सौंपा, जो 1 9 2.168.56.101 था।)

इससे कोई मदद कर सकता है।

फ़ायरवॉल सेटिंग्स के लिए this भी देखें।

1

मेरे लिए यह एक फ़ायरवॉल मुद्दा था:

  1. जाओ करने के लिए: नियंत्रण कक्ष -> Windows फ़ायरवॉल -> Windows फ़ायरवॉल के माध्यम से

  2. सूची के नीचे स्क्रॉल एक कार्यक्रम या फ़ीचर की अनुमति दें और www सेवाओं (http) के लिए चेकबॉक्स का चयन करें।

  3. सहेजें

अब मैं http://computername.domain नाम

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