"जिस पृष्ठ का आप अनुरोध कर रहे हैं वह एक्सटेंशन कॉन्फ़िगरेशन के कारण नहीं दिया जा सकता है।" त्रुटि संदेश


271

जब मैं अपना एप्लिकेशन चलाने का प्रयास कर रहा हूं तो मुझे यह त्रुटि संदेश मिल रहा है। मुझे नहीं पता कि इसे कैसे ठीक करना है:

HTTP एरर 404.3 - नहीं मिला वह पेज जो आप रिक्वेस्ट कर रहे हैं, उसे एक्सटेंशन कॉन्फ़िगरेशन के कारण नहीं परोसा जा सकता। यदि पृष्ठ स्क्रिप्ट है, तो एक हैंडलर जोड़ें। यदि फ़ाइल डाउनलोड की जानी चाहिए, तो MIME मैप जोड़ें।

यहां त्रुटि पृष्ठ का स्क्रीनशॉट दिया गया है: वैकल्पिक शब्द

मैं इस त्रुटि को ठीक करने के लिए क्या कर सकता हूं?


1
स्रोत कोड अधिक उपयोगी होगा, बल्कि फिर त्रुटि पृष्ठ
gsharp

1
स्रोत कोड के किस भाग को आपको देखना होगा?

1
उपरोक्त निर्देश का पालन करने के बाद भी अगर आपको वही त्रुटि हो रही है, तो नीचे दिए गए लिंक पर जाएं और नीचे दिए गए चरणों का पालन करें
Raj

जवाबों:


170

आप जिस .NET फ्रेमवर्क का उपयोग कर रहे हैं, उसके संस्करण को पंजीकृत करने के लिए aspnet_regiis.exe का उपयोग करें।

यह एक सामान्य समस्या है और ऐसा तब होता है जब IIS को VS या .NET फ्रेमवर्क के बाद स्थापित किया जाता है।

नोट - विंडोज 8/10 उपयोगकर्ताओं के लिए, नीचे JohnOpincar द्वारा दूसरा उत्तर देखें । और केविन ब्रायडन की टिप्पणी / टिप भी।


11
तथ्य की बात के रूप में मैंने पहले विजुअल स्टूडियो और फिर IIS स्थापित किया। मैं वर्तमान में "aspnet_regiis.exe -i" कमांड चला रहा हूं। उम्मीद है कि यह त्रुटि को ठीक करता है।

5
मेरे लिए तब भी काम किया था जब मुझे एक .svc WCF सेवा तक पहुँचने की कोशिश करते समय यह त्रुटि मिली थी।
atconway

नोट - विंडोज 8 के लिए उपयोगकर्ता नीचे JohnOpincar द्वारा अन्य उत्तर देखते हैं
KyleK

+1 खोज के माध्यम से इसे खोजने वाले किसी अन्य व्यक्ति के लिए, आपको aspnet_regiis.exe को कम से कम प्रतिरोध के मार्ग के रूप में चलाने के प्रयास के बजाय .NET इंस्टॉलेशन पर मरम्मत करना आसान हो सकता है और समस्या को हल करता है। हम इसे IIS 4.5 स्थापित करने से पहले .NET 4.5.2 (विंडोज अपडेट के माध्यम से) स्थापित किए गए बॉक्सों पर बहुत कुछ देख रहे हैं, यह थोड़ा निराशाजनक है क्योंकि ये बॉक्स .NET 4 को उनके ऐप पूल में एक विकल्प के रूप में दिखाएंगे, लेकिन यदि आपके आवेदन के लिए .NET 4.5 की आवश्यकता है, तो हमारी तरह यह उपरोक्त संदेश के साथ विफल हो जाएगा।
अन्सोलज़ोवका

245

विंडोज 8/10 में, आपको उपयोग करना होगा

  • ओपन कंट्रोल पैनल →
  • कार्यक्रम और सुविधाएँ →
  • विंडोज सुविधाओं को चालू या बंद करें →
  • इंटरनेट सूचना सेवा (IIS) →
  • वर्ल्ड वाइड वेब सेवाएँ →
  • अनुप्रयोग विकास सुविधाएँ →
  • ASP.NET सक्षम करने के रूप में उपयुक्त वस्तुओं की जाँच करें। (यानी अपनी वेबसाइट को कॉन्फ़िगर करने के लिए उपयुक्त संस्करण स्थापित करें)

संदर्भ: संदर्भ के लिए इस प्रश्न के समाधान की जांच करें


217
मैं जाँच करने के लिए किया था .NET Framework 4.5 Advanced Services> WCF Services>HTTP Activation
केविन Brydon

13
इस आदेश को व्यवस्थापक कमांड प्रॉम्प्ट से चलाएं: "पतन / ऑनलाइन / सक्षम-फ़ीचर / फ़ीचर नाम: डब्ल्यूसीएफ-एचटीटीपी-HTTP-एक्टिवेशन / ऑल", या "डिस / ऑनलाइन / इनेबल-फ़ीचर / फ़ीचरनाम: डब्ल्यूसीएफ-एचटीटीपी-HTTP-एक्टिवेशन 45 / ऑल"
पॉल सूर्ट

बस जब मुझे रिजीज़ चलाने की आदत पड़ गई, तो Microsoft चला गया और इसे फिर से बदल दिया। वैसे कम से कम यह बहुत आसान है - WIF स्थापित करने के लिए समान परिवर्तन। अब उन्हें एसक्यूएल को विंडोज फीचर्स ऑन / ऑफ करना चाहिए।
नोकररियर

@KevinBrydon - बहुत बहुत धन्यवाद! Windows 2012 R2 पर समस्या को हल करने के लिए आपकी टिप बहुत मददगार थी।
अमिल वडूवारा

Windows सर्वर 2012 R2 में, "Http सक्रियण" को सक्षम करना मेरे लिए काम करता है।
धानुका

117

मैंने तय किया कि मेरे विंडोज 10 पर:

  1. कंट्रोल पैनल पर जाएं - प्रोग्राम और फीचर्स - विंडोज सुविधाओं को चालू या बंद करें।

  2. .NET फ्रेमवर्क 4.6 उन्नत सेवाओं का चयन करें - WCF सेवाएँ

  3. HTTP एक्टिवेशन चेक करें।

  4. ठीक है हो गया।


5
विंडोज 10 पर मेरे लिए काम करता है! धन्यवाद!
सर्गेई मालुटिन

1
मेरे लिए
for.१

Win10 iis7 पर काम किया
noCodeMonkeys

यह काम करता है विंडोज 1709 में अपग्रेड करने के बाद और
गरेटेन्डी

मेरे लिए पूरी तरह से काम कर रहा है। यदि आप "जैसे त्रुटि प्राप्त कर रहे हैं तो समाधान निकालें।" यह त्रुटि तब होती है जब अनुरोधित URL की फ़ाइल एक्सटेंशन उस MIME प्रकार के लिए है जो सर्वर पर कॉन्फ़िगर नहीं है "
eranda.del

84

मेरे मामले में मुझे प्रत्येक फ़ाइल एक्सटेंशन के लिए MIME प्रकारों को जोड़ने की आवश्यकता थी जो मैं वेब कॉन्फ़िगर करना चाहता था:

<system.webServer>
    <staticContent>
      <mimeMap fileExtension=".shp" mimeType="application/octet-stream" />
      <mimeMap fileExtension=".dbf" mimeType="application/octet-stream" />
      <mimeMap fileExtension=".kml" mimeType="text/xml" />
    </staticContent>
    ...
</system.webServer>

2
1+ इसने मेरी समस्या को ठीक कर दिया ... मैं लोड करने की कोशिश कर रहा था .jsonऔर मैं ओपी त्रुटि प्राप्त कर रहा था और आखिरकार मैंने mimeMapअपने वेब.कॉन्फ़िग में एंड-अप जोड़ दिया और समस्या को हल कर दिया
निक कहन

क्या मुझे asmx फ़ाइल के लिए MIME प्रकार जोड़ना होगा?
शिल्पा सोनी

@ShilpaSoni asmx फाइलें asp.net सर्वर फाइलें (स्थिर सामग्री नहीं) हैं। तो आप नहीं कर सकते हैं और आप उन्हें ग्राहक से डाउनलोड करने की जरूरत नहीं है।
महमूदवक्स

1
और यहाँ फ़ाइल एक्सटेंशन का एक नक्शा उनके उपयुक्त mimeType के लिए है, जो इस SO प्रश्न से मिला है
The Red Pea

21

यदि यह किसी की मदद करता है, तो aspnet_regiis.exe चलाने का प्रयास करते समय मुझे यह त्रुटि मिली थी:

0x8007000B के साथ ऑपरेशन विफल हुआ

एक प्रोग्राम को एक गलत प्रारूप के साथ लोड करने का प्रयास किया गया था

जैसा कि यह पता चला है, सर्वर 2008 64 बिट चला रहा था और मैं उपयोगिता के 32 बिट संस्करण को चलाने की कोशिश कर रहा था। \ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727 में पाए गए संस्करण को चलाने से समस्या ठीक हो गई।

c:\Windows\Microsoft.NET\Framework64\v2.0.50727>aspnet_regiis.exe -i

7

मेरे पास अपने ग्राहक के साथ बस यही स्थिति है। हमारा अपना उत्पाद है जो एक वेब साइट स्थापित करता है। इंस्टॉलर सब कुछ कॉन्फ़िगर करता है: IIS पूल, साइट, web.config, आदि।

हमने अपने इंस्टॉलर का उपयोग करके एक और वेब साइट स्थापित की है। हम एक ही पैरामीटर में प्रवेश करते हैं, इसलिए web.configs दोनों साइटों में समान हैं।

हालाँकि, नई स्थापित साइट ने ठीक काम किया, जबकि पुराने ने नहीं किया। फिर मैंने 2 IIS प्रबंधक विंडो खोली और वेब साइट सेटिंग्स में अंतर की तुलना करना शुरू कर दिया। और मुझे एक समस्या मिली।

किसी ने पुरानी साइट के साथ सभी हैंडलर मैपिंग को हटा दिया। यदि आप "हैंडलर मैपिंग" के लिए जाते हैं, तो आपको वहां aspx, asmx और अन्य एक्सटेंशन और हैंडलर के नाम देखना चाहिए। इसलिए, पुरानी साइट में वे सभी रिकॉर्ड गायब थे।

इसलिए, मैं पहले "हैंडलर मैपिंग" की जांच करने का सुझाव दूंगा - वहां बहुत सारे रिकॉर्ड होने चाहिए। एक नई वेब साइट बनाएँ और यह जानने के लिए तुलना करें कि वहाँ कितने होने चाहिए।

किसने उन्हें, किसी व्यक्ति या किसी अन्य प्रोग्राम को डिलीट किया, मुझे पता नहीं है। अगर कोई बता सकता है कि क्या कोई ट्रैकिंग एप्लिकेशन मौजूद है जो बताएगा कि उपयोगकर्ता डोमेन \ john "07.03.2012 12:34" पर वेब साइट को संशोधित कर रहा है जो उपयोगी होगा।



6

मैंने सभी WCF सुविधाओं को स्थापित करके विंडोज 2012 सर्वर पर अपना मुद्दा तय किया।

ए) सर्वर मैनेजर> [लिंक टॉप लेफ्ट]> रोल्स और फीचर्स जोड़ें

बी) फीचर्स में। नेट फ्रेमवर्क 4.5 फीचर्स> डब्ल्यूसीएफ सर्विसेज

सी) सुविधाओं की जांच (सक्षम) करें। मैंने सब चेक किया।

डी) स्थापित करें


2
मैंने केवल HTTP एक्टिवेशन और टीसीपी एक्टिवेशन की जाँच की और यह मेरे लिए काम किया। वैसे भी धन्यवाद!
अलेक्सी माइलकिन

6

Windows Server 2008 R2 64bit और .net फ्रेमवर्क 4.5 को चलाना, इस कमांड को इस स्थान से चलाता है, और सफल रहा:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319>aspnet_regiis -i

उत्पादन:

Microsoft (R) ASP.NET RegIIS version 4.0.30319.0
Administration utility to install and uninstall ASP.NET on the local machine.
Copyright (C) Microsoft Corporation.  All rights reserved.
Start installing ASP.NET (4.0.30319.0).
.....
Finished installing ASP.NET (4.0.30319.0).

3

जैसा कि @Mahoodvcs ने उल्लेख किया है कि मुझे फ़ाइल एक्सटेंशन के लिए MIME प्रकार सेट करने / जोड़ने की आवश्यकता थी, जिसकी मुझे सीधे होस्ट / डाउनलोड करने की आवश्यकता थी, इस मामले में एक Heroku की डंप फ़ाइल (पोस्टग्रेज का डेटाबेस बैकअप) है, इसलिए सार्वजनिक IIS सर्वर सेट करने के लिए जहाँ आप AWS S3 बाल्टी या HTTP शेयरों जैसे ड्रॉपबॉक्स की आवश्यकता के बिना इस फ़ाइलों को डाउनलोड कर सकते हैं यह एक बहुत अच्छा विकल्प है!

<staticContent>
  <mimeMap fileExtension=".dump" mimeType="application/octet-stream" />
</staticContent>


2

वैसे, मुझे अभी यह पोस्ट पता चली है : http://blogs.msdn.com/b/webtopics/archive/2010/03/03/19/iis-7-5-how-to-enable-iis-configuration -auditing.aspx यह बताता है कि IIS पर परिवर्तनों का ऑडिट कैसे किया जाता है। जो लोग इसी तरह की समस्याओं का सामना करते हैं उनके लिए मैं ऑडिटिंग चालू करने का सुझाव देता हूं और बाद में देखता हूं कि आपकी साइट ने काम करना क्यों बंद कर दिया।


2

मेरे पास भी यह त्रुटि थी, विंडोज सर्वर 2008 IIS 7 पर, मेरे पास कोई दृश्य स्टूडियो स्थापित नहीं था इसलिए .NET 4.0 की पुनर्स्थापना / मरम्मत ने चाल चली।


1

IIS अनुसरण में सेवा करने के लिए एक्सटेंशन जोड़ने के लिए -

  1. IIS प्रबंधक खोलें और उस स्तर पर नेविगेट करें जिसे आप प्रबंधित करना चाहते हैं।
  2. सुविधाएँ दृश्य में, MIME प्रकार पर डबल-क्लिक करें।
  3. क्रियाएँ फलक में, जोड़ें क्लिक करें।
  4. MIME टाइप करें संवाद बॉक्स में, फ़ाइल नाम एक्सटेंशन पाठ बॉक्स में फ़ाइल नाम एक्सटेंशन टाइप करें। ... MIME टाइप करें
  5. MIME टाइप टेक्स्ट बॉक्स में।
  6. ओके पर क्लिक करें।

1
मैंने इस समाधान का परीक्षण .ts (टाइप स्क्रिप्ट फाइल्स) के मामले में किया था। आपको MIME टाइप टाइपस्क्रिप्ट फ़ील्ड्स (.ts) में घोषित करना होगा। मैं टेक्स्ट / x.typescript का उपयोग माइम टाइप
फ्रीडेवलपर


0

सत्यापित करें कि IIS (IIS7 या ऊपर के मामले में) में एप्लिकेशन पूल को एकीकृत के रूप में चुना गया है। इस मामले में, शायद क्लासिक में परिवर्तन इस समस्या को हल कर सकता है।


0

सर्वर 2016 से संबंधित, मुझे जोड़ना चाहिए:

  1. इस कमांड को चलाएं: aspnet_regiis -lvइस डायर से: C:\Windows\Microsoft.NET\Framework\v2.0.50727\ यह आपको सबसे अच्छा दृश्य देता है जो चल रहा है

  2. सर्वर 2016 पर, .net और iis को क्रम से स्थापित करने से कोई समस्या नहीं होती है।

  3. सर्वर 2016 पर समस्या होने की अधिक संभावना है कि मशीन पर asp.net स्थापित नहीं है।


0

के लिये Windows Server 2016

  1. ओपन Server Managerफॉर्म
  2. Manage -> Add Roles and Features
  3. अगले Featuresपेज तक
  4. WCF Servicesसभी सबफ़्रीचर के साथ सुविधा की जाँच करें
  5. Next तथा Install

0

Windows Server 2012 R2 पर PHP 7.3 अनुप्रयोग IIS

यह मेरे लिए दो चरणों वाली प्रक्रिया थी।

1) WCF सेवाएँ सक्षम करें - एक सर्वर पुनरारंभ के साथ

2) एक FASTCGI मॉड्यूल मानचित्रण जोड़ें

1)

सर्वर प्रबंधक पर जाएँ> भूमिकाएँ और सुविधाएँ सर्वर पूल से अपने सर्वर का चयन करें सुविधाएँ पर जाएँ> WCF सेवाएँ मैंने उन सभी श्रेणियों को चुना है जो पहले से स्थापित थीं

2)

IIS> साइट पर जाएं केंद्र में चयन करें फलक हैंडलर मैपिंग का चयन करें दाहिने हाथ का चयन मॉड्यूल मैपिंग जोड़ें का चयन करें

संपादन विंडो के भीतर:

अनुरोध पथ: * .php

मॉड्यूल: FastCgimodule

निष्पादन योग्य: मैंने अपने PHP फ़ोल्डर के अंदर php-cgi.exe के लिए ब्राउज़ किया

नाम: PHP7.3

अब मैं इसके बारे में सोचता हूँ। वेब-कॉन्फिग के अंदर इस हैंडलर मैपिंग को जोड़ने का एक तरीका हो सकता है, इसलिए यदि आप अपनी साइट को किसी अन्य सर्वर पर माइग्रेट करते हैं तो आपको इस मैपिंग को बार-बार नहीं जोड़ना होगा।

संपादित करें: यहाँ यह है। इसे वेब-कॉन्फ़िगरेशन के अनुभाग में जोड़ें।

<add name="PHP-FastCGI" verb="*" 
  path="*.php" 
  modules="FastCgiModule"
  scriptProcessor="c:\php\php-cgi.exe" 
  resourceType="Either" />


0

यदि आप एक्सटेंशन-रहित फ़ाइल को देखने का प्रयास कर रहे हैं, तो मेरे लिए जो काम किया गया है वह इसमें शामिल था MIME Type: फ़ाइल नाम एक्सटेंशन : . MIME प्रकार :text/plain

इसके कुछ एमवीसी निहितार्थ हो सकते हैं, खासकर यदि आपका हैंडलर (अंडर / ) Static File Handlerसे ऊपर है, लेकिन हो सकता है कि यह एक काम हो, जब आपको केवल SSL अस्थायी रूप से सक्रिय करने की आवश्यकता हो।Extensionless...IISHandler Mappings

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