IIS8 पर WCF; *। पीवीसी हैंडलर मानचित्रण काम नहीं करता है


272

मैं 2012 में 8400 का निर्माण करने पर IIS8 में wcf सेवा प्राप्त करने की कोशिश कर रहा हूं।

2008 में वेब भूमिका स्थापित करते समय wcf सामान (3.51 से कम) नहीं पाया गया।

जब स्थापित svc हैंडलर मानचित्रण गायब था, तो मैंने एक किया:

%windir%\Microsoft.NET\Framework\v3.0\WindowsCommunication Foundation\ServiceModelReg.exe i

अब हैंडलर मैपिंग है, लेकिन मुझे अभी भी मिल रहा है:

The resource you are looking for does not have a handler associated with it.

(मैंने स्टैटिक फाइल हैंडलर को हटा दिया।)

प्रतिरूपण का उपयोग करने के लिए साइट क्लासिक पाइपलाइन का उपयोग कर रही है।

जवाबों:


553

अधिक विशेष रूप से:

  1. रन Server Manager(टास्क बार और स्टार्ट मेनू पर)
  2. व्यवस्थापन के लिए सर्वर चुनें (शायद स्थानीय सर्वर)
  3. नीचे " Roles and Features" अनुभाग तक स्क्रॉल करें ।
  4. Add Role or Featureकार्य ड्रॉप डाउन से " " चुनें
  5. " Add Role or Feature Wizard" संवाद Featuresपर, बाईं ओर पृष्ठों की सूची में "नीचे" पर क्लिक करें ।
  6. जो आपने स्थापित किया है, उसके आधार पर विस्तार ".Net 3.5"या ".Net 4.5"। ( rolesयदि आपके पास नहीं है, तो आप " " स्क्रीन पर वापस जा सकते हैं ।
  7. " WCF Services" के तहत, " " के लिए बॉक्स चेक करें HTTP-Activation। आप गैर-http प्रकार भी जोड़ सकते हैं यदि आप जानते हैं कि आपको उनकी आवश्यकता है (टीसीपी, नाम पाइप, आदि)।
  8. "Install"बटन पर क्लिक करें।

6
यह एक मेरे मामले में काम नहीं किया क्योंकि मैं विंडोज 8 (IIS 8 के साथ) पर हूं।
जोश मोच

9
यदि आप पहली बार v3.0 निर्देशिका से ServiceModelReg.exe -i को चलाते हैं, तो इससे पहले कि यह काम करेगा, आपको इसे हटाने के लिए ServiceModelReg.exe –ua चलाने की भी आवश्यकता है।
स्कॉट एंडरसन

14
कमांड लाइन से: पतन / ऑनलाइन / सक्षम-फ़ीचर / फ़ीचर नाम: WCF-HTTP-एक्टिवेशन / ऑल
रिचर्ड

4
Gyorgybalassy.wordpress.com/2012/09/24/… के बारे में क्या है ? कौन सा बेहतर तरीका है?
किकेनेट

9
मैं सचमुच एक घंटे के लिए "सर्वर रोल्स" पृष्ठ को घूर रहा था। मुझे नहीं पता था कि आप बस "अगला" पर क्लिक कर सकते हैं या बाईं ओर "सुविधाएँ" पर क्लिक कर सकते हैं। o_O +1
दान बीचर्ड

219

मुझे > HTTP Activationमें सक्षम करना था.NET Framework 4.5 Advanced ServicesWCF Services

HTTP सक्रियण सक्षम करें


10
यह वही है जो आपको विंडोज 8 के लिए करने की आवश्यकता है जहां कोई सर्वर मैनेजर नहीं है
शमौन_वेअर जूल

2
यह जवाब है जब आप विंडोज 8 और विंडोज 8.1 में डब्ल्यूसीएफ सेवा की मेजबानी कर रहे हैं
vcRobe

Http सक्रियण। क्या यह महत्वपूर्ण है अगर आप http / https का उपयोग करते हैं? इस प्रकार कि दोनों के लिए एक सारांश नाम या वहाँ अभी भी एक भेद की आवश्यकता है?
थॉमस

2
मुझे IIS 10 पर समान समस्या का सामना करना पड़ा, Http सक्रियण डिफ़ॉल्ट रूप से बंद है। इसे सक्षम करने से समस्या तुरंत हल हो गई। धन्यवाद!
druvpatel

4
विंडोज 10, आईआईएस 10 के लिए काम करता है
वॉटरब्वारिफ

45

निम्न को चालू करें 'विंडोज सुविधाएँ चालू या बंद करें' पर

a) .नेट फ्रेमवर्क 3.5 - WCF HTTP एक्टिवेशन और नॉन-हेटप एक्टिवेशन

b) सभी WCF सेवाओं के अंतर्गत


1
मुझे केवल .Net फ्रेमवर्क 3.5 - WCF HTTP एक्टिवेशन
daveywc

40

Windows 8 IIS8 के साथ

  • मारो Windows+X
  • चयन करें Programs and Features(सूची में पहला आइटम)
  • Turn Windows Features on or offबाईं ओर का चयन करें
  • विस्तार .NET Framework 4.5 Advanced Services
  • विस्तार WCF Services
  • सक्षम करें HTTP Activation

किसी भी शक्तियुक्त स्क्रिप्ट को इसे प्रोग्रामेटिक रूप से करने के लिए?
किकेनेट

हमारे पास एक सर्वर है, इसलिए मैं कभी भी उन्नत शक्तियों में नहीं जाता
सिमोन_वेर

28

मैं आजकल एक स्क्रिप्ट के माध्यम से ऐसा करना पसंद करता हूं

REM install the needed Windows IIS features for WCF
dism /Online /Enable-Feature /FeatureName:WAS-WindowsActivationService
dism /Online /Enable-Feature /FeatureName:WAS-ProcessModel
dism /Online /Enable-Feature /FeatureName:WAS-NetFxEnvironment
dism /Online /Enable-Feature /FeatureName:WAS-ConfigurationAPI
dism /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation
dism /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation45

REM Feature Install Complete
pause

2
धन्यवाद dism /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation dism /Online /Enable-Feature /FeatureName:WCF-HTTP-Activation45मेरे लिए पर्याप्त था ...
शुभ

यह विंडोज सर्वर के एक नए 2012R2 + संस्करण पर इसे ठीक करने का सबसे अच्छा तरीका है। शायद 2012 के रूप में अच्छी तरह से काम करता है, लेकिन शुक्र है, मेरे पास अब इसे बाहर की कोशिश करने के लिए नहीं है।
पॉल स्टुरम

और PowerShell स्क्रिप्ट का उपयोग कर रहे हैं ?
किकेनेट

@Kiquenet ये आदेश सभी शक्तियां में काम करेंगे। यदि आपने शुभ के आदेश को सीधे कॉपी करने का प्रयास किया है, तो आपको दूसरे पतन आदेश से पहले पहले कमांड के बाद लाइन ब्रेक या अर्धविराम जोड़ने की आवश्यकता है।
kb4000

10

हम विंडोज सर्वर 2012 के तहत त्रुटि को हल करने में कामयाब रहे:

  1. "निकालें भूमिकाएँ और सुविधाएँ विज़ार्ड" .NET फ्रेमवर्क 4.5 ASP.NET / 4.5 और इसके सभी आश्रित सुविधाओं से हटाना
  2. हटाए गए सुविधाओं को फिर से स्थापित करना।

ऐसा लगता है कि स्थापना का क्रम इसका कारण है।

इसके अलावा, सुनिश्चित करें कि आपके पास WCF सेवाओं के अंतर्गत HTTP सक्रियण स्थापित है।


मैंने ऐसा किया और लगता है कि उसने मेरे सर्वर को मार दिया है। मैंने केवल iis के तहत asp.net सामान को अनइंस्टॉल किया, लेकिन अब जब मैं रिमोट करता हूं तो मुझे एक काली स्क्रीन और एक कमांड प्रॉम्प्ट विंडो मिलती है, जैसे सर्वर अब केवल "सर्वर कोर" है ...:
MGOwen

@MGOwen जब आप .net 4.5 की कुछ विशेषताओं को हटाते हैं तो ऐसा लगता है कि यह सर्वर ग्राफ़िकल शेल को भी हटा देता है, इसे फिर से कुछ कमांड के साथ जोड़ा जा सकता है।
जॉन

3

विंडोज 8 मशीनों के लिए कोई "सर्वर मैनेजर" एप्लिकेशन नहीं है (कम से कम मैं इसे खोजने में सक्षम नहीं था)।

हालांकि मैं समस्या को हल करने में सक्षम था । मुझे यकीन नहीं है कि मैंने निम्नलिखित ऑपरेशन किस क्रम में किए हैं, लेकिन निम्नलिखित कार्यों में से एक / कुछ की तरह दिखता है:

  1. निम्न को चालू करें 'चालू करें या बंद करें' पर विंडोज विशेषताएँ ए) .नेट फ्रेमवर्क 3.5 - डब्ल्यूसीएफ HTTP सक्रियण और गैर-एचटीपी सक्रियण ख) सभी डब्ल्यूसीएफ सेवाओं के तहत (जैसा कि इस प्रश्न के उत्तर में निर्दिष्ट है)

  2. "ServiceModelReg.exe -i" को "% windir% \ Microsoft.NET \ फ्रेमवर्क \ v3.0 \ Windows संचार फाउंडेशन \" फ़ोल्डर में निष्पादित किया गया

  3. ASP.NET 2.0 को दो कमांड के माध्यम से पंजीकृत किया गया है (फ़ोल्डर C में: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727):

    aspnet_regiis -ga "NT AUTHORITY \ NETWORK सेवा" aspnet_regiis -iru

  4. पीसी को पुनरारंभ किया गया ... ऐसा लग रहा है कि कार्रवाई ## 3 और 4 के रूप में हुई है। मेरे ASP.NET कॉन्फ़िगरेशन में कुछ टूट गया है

  5. कार्रवाई # 2 दोहराएं

  6. "प्रोग्राम और फीचर्स" से दो अन्य विकल्प स्थापित करें: .Net फ्रेमवर्क 4.5 उन्नत सेवाएँ। मैंने दोनों उप विकल्पों की जाँच की: ASP.NET 4.5 और WCF सेवाएँ

  7. ऐप पूल को पुनरारंभ करें।

अनुक्रम पागल की तरह है, लेकिन इससे मुझे मदद मिली और शायद दूसरे को मदद मिलेगी


कुंजी बिट HTTP सक्रियण को चालू कर रहा है।
उमर फारूक ख्वाजा

Gyorgybalassy.wordpress.com/2012/09/24/… के बारे में क्या है ?
कीकनेट

2

Windows 8 या Windows Server 2012 पर IIS 8 को कॉन्फ़िगर करते समय इंस्टॉलेशन का ऑर्डर बहुत मायने रखता है।

मुझे IIS 8 को कॉन्फ़िगर करने में बहुत सारी समस्याओं का सामना करना पड़ा लेकिन आखिरकार इन लिंक्स ने मेरी मदद की


2

PowerShell का उपयोग करके आप इसके साथ आवश्यक सुविधा स्थापित कर सकते हैं:

Add-WindowsFeature 'NET-HTTP-Activation'

1

विंडोज़ 10 (क्लाइंट) पर आप इसका उपयोग करके स्क्रिप्ट भी कर सकते हैं

Enable-WindowsOptionalFeature -Online -NoRestart -FeatureName WCF-HTTP-Activation45 -All

ध्यान दें कि यह सर्वर skus से एक अलग कमांड है


0

यह .NET फ्रेमवर्क Windows प्रक्रिया सक्रियण सुविधा की HTTP सक्रियण सुविधा भी आवश्यक है


0

यह वास्तव में मेरे लिए मूर्खतापूर्ण था। इसे यहाँ जोड़ने के रूप में यह svc 404 मुद्दों पर अधिक लोकप्रिय थ्रेड्स में से एक है।

मैंने अपनी प्रोजेक्ट सेटिंग \ Web \ Project URL में चिपकाई थी:

http://blah.webservice.local.blahblah.com/Blah.svc

और किसी अज्ञात कारण से (यह एक हजार बार किया है) सीधे दूर नहीं दिखाई दिया कि .svc फ़ाइल का नाम अंत में था।

DOH!

मैंने अपने WCF परीक्षण ग्राहक से सिर्फ पते को चिपकाया था और इसे पर्याप्त रूप से जाँच नहीं किया था। बैकग्राउंड में ऐसा करने से .svc एड्रेस पर IIS एप्लिकेशन तैयार होता है और मुझे IIS से बाहर कुछ नहीं मिल रहा है। मैं बाहर काम नहीं कर सकता कि मैं कैसे .svc फ़ाइल भी नहीं मार सकता।

सरल फिक्स, जाहिर है, बस आईआईएस में आवेदन को हटा दें और प्रोजेक्ट URL को बदल दें।

इस पर लगभग 20 वर्षों के बाद, आप अभी भी स्कूली गलतियों / धोखेबाज़ गलतियों को कर सकते हैं। आशा है कि यह किसी की मदद करता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.