2010-06-09 13 views
11

द्वारा अवरुद्ध डब्ल्यूसीएफ सेवा मुझे एचटीपीबींडिंग का उपयोग कर डब्ल्यूसीएफ सेवा मिली है। यह सेवा एक स्वयं होस्टिंग प्रक्रिया (एक विंडोज सेवा) में चल रही है और यह प्रक्रिया विंडोज फ़ायरवॉल अपवाद सूची के अंदर है।विंडोज फ़ायरवॉल

यदि फ़ायरवॉल सक्रिय है और मैं सी # क्लाइंट या इंटरनेट एक्सप्लोरर का उपयोग कर सेवा तक पहुंचने का प्रयास कर रहा हूं, तो सेवा प्रतिक्रिया नहीं देती है। लेकिन अगर फ़ायरवॉल अक्षम है तो कनेक्शन एक आकर्षण की तरह काम करता है।

क्या किसी के पास डब्ल्यूसीएफ और विंडोज फ़ायरवॉल के साथ समय सीमा है? समस्या विंडोज 7 64 बिट पर आई। मैंने अभी तक एक और ओएस कोशिश नहीं की है।

यह सक्रिय फ़ायरवॉल के साथ काम करने के लिए मुझे क्या करना चाहिए?

सादर माइकल

संपादित करें: मैं एक सुराग मिल गया है, http.sys फ़ायरवॉल अपवाद सूची में जोड़े जाने के लिए, WCF स्वयं होस्टिंग http.sys का उपयोग करता है के रूप में है। कोई सलाह, इसे कैसे हल करें?

संपादित करें: मैंने मैन्युअल रूप से सभी श्रवण बंदरगाह खोलने का प्रयास किया, जो भी काम करता है, लेकिन यह एक विकल्प नहीं है, क्योंकि मैं उन्हें पहले से नहीं जानता।

+0

सेवा का उपयोग बंदरगाह खोलने का प्रयास करें? i.e पोर्ट 80, 8080 या जो भी आपने कॉन्फ़िगर किया है। चूंकि यह नियमित http का उपयोग करता है, इसलिए मुझे समस्या दिखाई नहीं दे रही है :( – KTrum

+0

मैंने अभी कोशिश की है और यह काम करता है। लेकिन एक साधारण उपयोगकर्ता प्रयोग प्रदान करने के लिए, यह उत्पादक वातावरण में एक विकल्प नहीं है। (ऐसा प्रतीत होता है कि बंदरगाह बदल गया है ...) –

+0

अजीब लगता है कि बंदरगाह बदल जाएगा? क्या आप सेवा प्रकाशित करने के लिए आईआईएस का उपयोग कर रहे हैं? मुझे लगता है कि आपको एक दिनचर्या करना होगा जो जांचता है कि कौन सी बंदरगाह सेवा अब उपयोग करती है और फ़ायरवॉल में प्रोग्राम को व्यवस्थित रूप से खोलती है, अगर ऐसा है भी संभव। पोर्ट फ़ायरवॉल में बंद कर दिया गया है, तो आप शायद नहीं सेवा का उपयोग करने में सक्षम हो जाएगा। – KTrum

उत्तर

5

एमएसडीएन आलेख Configuring HTTP and HTTPS आज़माएं।

+2

अंत में ... मुझे यकीन नहीं है कि यह का इरादा है आपका उत्तर, लेकिन आलेख बताता है कि: "डब्ल्यूसीएफ के लिए स्वयं-होस्टेड HTTP एड्रेसिंग विंडोज व्यक्तिगत फ़ायरवॉल में एकीकृत नहीं है। किसी विशेष URL का उपयोग करके इनबाउंड कनेक्शन को अनुमति देने के लिए फ़ायरवॉल कॉन्फ़िगरेशन में एक अपवाद जोड़ा जाना चाहिए। "मुझे लगता है कि 'अपवाद' को पोर्ट अपवाद (प्रक्रिया नहीं) माना जाता है। कम से कम यह मेरा अनुभव है। –

4

जहाँ तक मुझे पता है, जोड़ने स्वयं की मेजबानी फ़ायरवॉल के WCF सेवा प्रक्रिया काम नहीं करता है, क्योंकि यह है कि इस प्रक्रिया भीतर का कॉल लेने नहीं है, यह तभी काम करता है वैश्विक बंदरगाह अपवाद को

  1. ऐड सेवा बंदरगाह
  2. अपवाद को संसाधित करने के लिए डब्ल्यूसीएफ इनबाउंड डिमन प्रक्रिया जोड़ें, मुझे http के बारे में निश्चित नहीं है, लेकिन net.tcp बाइंडिंग के लिए, आपको अपनी प्रक्रिया के बजाय $ FrameworkDir/SMSvcHost.exe की आवश्यकता है।
संबंधित मुद्दे