ASP.NET कोर 1.0 IIS त्रुटि 502.5 पर


112

मैंने अपने सर्वर (Windows 2012R2) को .Net Core 1.0 RTMपिछले से विंडोज होस्टिंग पैक में अपडेट किया है .Net Core 1.0 RC2। मेरा ऐप बिना किसी समस्या के मेरे पीसी पर काम करता है लेकिन सर्वर दिखाता रहता है:

HTTP Error 502.5 - Process Failure


Common causes of this issue:

The application process failed to start
The application process started but then stopped
The application process started but failed to listen on the configured port

यह पहले RC2 संस्करण के साथ काम करता था। पता नहीं क्या गलत हो सकता है।

यह सब घटना दर्शक कहते हैं:

Failed to start process with the commandline 'dotnet .\MyWebApp.dll'. Error code = '0x80004005'.

सबसे बुरी बात यह है कि ऐप लॉग खाली हैं! मेरा मतलब है कि उन stdout_xxxxxxxxx.log फाइलें पूरी तरह से खाली हैं और सभी में 0 बाइट का आकार है।

मुझे क्या करना चाहिए?? लॉग न होने पर मैं त्रुटि का कारण कैसे जान सकता हूं ??


संभवतः संबंधित हैं? stackoverflow.com/questions/37362183/…
ब्रेंडन ग्रीन

3
यह कैसे संबंधित है? त्रुटि कोड स्पष्ट रूप से भिन्न है। अकेले तथ्य यह है कि मैंने कहा कि यह अपने पीसी पर IIS के साथ काम करता है।
वाहिद अमीरी

1
पहले, मैंने संभवतः संबंधित कहा था , क्योंकि उल्लेख है कि Failed to start process with commandline 'dotnet ./bin/Debug/netcoreapp1.0/WebApplication2.dll', Error Code = '0x80004005'.- वही कमांडलाइन और त्रुटि कोड जो आप रिपोर्ट कर रहे हैं। दूसरे, सिर्फ इसलिए कि यह आपकी मशीन पर चलता है, लेकिन रिमोट मशीन नहीं, यह दर्शाता है कि सर्वर पर कुछ अलग है। यदि आप इस बात का विस्तार कर सकते हैं कि एप्लिकेशन को सर्वर पर कैसे तैनात किया जाए, तो यह मददगार होगा।
ब्रेंडन ग्रीन

आपका क्या मतलब है कि आपका ऐप आपके पीसी पर काम कर रहा है .. आपका मतलब है कि आपके पास आईआईएस के लिए एक प्रोजेक्ट है? क्या मैं ryt हूँ?
1:19 बजे विजुनव वस्तिव

1
@ VSG24 क्या आपने asp.net doc का यह खंड देखा है? IIS में प्रकाशन , यह सामान्य त्रुटियों को सूचीबद्ध करता है और 502.5 त्रुटि के लिए सूचीबद्ध कारणों में से कुछ है।
बजे हामिद मोसल्ला

जवाबों:


112

मैं दौड़ कर इसे ठीक कर पाया

"C: \ Program Files \ dotnet \ dotnet.exe" "C: \ fullpath \ PROJECT.dll"

कमांड प्रॉम्प्ट पर, जिसने मुझे बहुत अधिक सार्थक त्रुटि दी:

"निर्दिष्ट ढाँचा 'Microsoft.NETCore.App', संस्करण '1.0.1' नहीं मिला। - अनुप्रयोग निर्भरता की जाँच करें और यहाँ स्थापित एक ढाँचा संस्करण को लक्षित करें: C: \ Program Files \ dotnet \ साझा \ Microsoft.NETCore.App - निम्नलिखित संस्करण स्थापित हैं: 1.0.0 - वैकल्पिक रूप से, फ्रेमवर्क संस्करण '1.0.1' स्थापित करें।

जैसा कि आप देख सकते हैं, मेरे सर्वर पर गलत नेट कोर संस्करण स्थापित था। मैं पिछले संस्करण 1.0.0 की स्थापना रद्द करने और सही संस्करण 1.0.1 स्थापित करने के बाद अपना एप्लिकेशन चलाने में सक्षम था।


2
मैं इसका उपयोग करने में कामयाब रहा जिसे मैंने NodeJS स्थापित करने की आवश्यकता थी ... क्योंकि यह "बहुत अधिक सार्थक संदेश" देता है।
टिम हरकर

मैं आपको बता नहीं सकता कि मैंने इस पर कितना समय बर्बाद किया। धन्यवाद। मेरी त्रुटि एक लापता प्रमाणपत्र से संबंधित थी। मैं कुछ त्रुटि विधि के माध्यम से यह त्रुटि क्यों नहीं प्राप्त कर सका?
Sprague

4
क्या कोई मुझे बता सकता है कि कमांड क्या है? C: \ fullpath \ dotnet क्या है? आपके ऐप का पथ, लेकिन डॉटनेट क्या है ? प्रोजेक्ट फोल्डर में कोई भी डॉटनेट फाइल नहीं है
जेरेमी थॉम्पसन

9
@JeremyThompson यह dotnet.exe का पथ है जो आम तौर पर यहां स्थित है: C: \ Program Files \ dotnet \ dotnet.exe
hatsrumandcode

1
मैं .NET .NET कोर के अपडेट के बाद बस इस त्रुटि के पार आया। 2.1.3 ने इसे सही .NET SDK / रनटाइम इंस्टॉल करके तय किया।
माइक बोवेनलैंडर

68

मेरे पास एक ही समस्या थी, मेरे मामले में यह मेरे एप्लिकेशन पूल के उपयोगकर्ता पहचान की अपर्याप्त अनुमति थी, asp.net doc के IIS पृष्ठ पर प्रकाशित होने पर, इस त्रुटि के लिए सूचीबद्ध कारण की एक जोड़ी है:

  • यदि आपने स्व-निहित एप्लिकेशन प्रकाशित किया है, तो पुष्टि करें कि आपने प्रकाशन RID के साथ उस संघर्ष buildOptionsका एक मंच निर्धारित नहीं किया है project.json। उदाहरण के लिए, x86 के एक मंच को निर्दिष्ट न करें और win81-x64 ( dotnet publish -c Release -r win81-x64) के एक RID के साथ प्रकाशित करें । परियोजना चेतावनी या त्रुटि के बिना प्रकाशित होगी लेकिन सर्वर पर उपरोक्त लॉग इन अपवादों के साथ विफल।
  • Web.config में तत्व की processPathविशेषता की जांच <aspNetCore>करें कि यह पुष्टि करने के लिए है कि यह dotnetएक पोर्टेबल एप्लिकेशन के लिए है या एक आत्म-निहित एप्लिकेशन के लिए।
  • पोर्टेबल अनुप्रयोग के लिए, dotnet.exeपाथ सेटिंग्स के माध्यम से सुलभ नहीं हो सकता है। पुष्टि करें कि C:\Program Files\dotnet\सिस्टम पथ सेटिंग में मौजूद है।
  • पोर्टेबल एप्लिकेशन के लिए, dotnet.exeएप्लिकेशन पूल के उपयोगकर्ता पहचान के लिए सुलभ नहीं हो सकता है। पुष्टि करें कि AppPool उपयोगकर्ता पहचान की C:\Program Files\dotnetनिर्देशिका तक पहुंच है ।
  • पुष्टि करें कि आपने .UseIISIntegration()एप्लिकेशन की विधि को कॉल करके IIS इंटीग्रेशन मिडिलवेयर को सही ढंग से संदर्भित किया है WebHostBuilder()
  • यदि आप .UseUrls()Kestrel के साथ स्व-होस्टिंग करते समय एक्सटेंशन विधि का उपयोग कर रहे हैं , तो पुष्टि करें कि यह .UseIISIntegration()एक्सटेंशन विधि से पहले पोस्ट किया गया है WebHostBuilder()। IIS के पीछे Kestrel चलाते समय रिवर्स-प्रॉक्सी .UseIISIntegration()के Urlलिए सेट करना चाहिए और इसके द्वारा इसके मूल्य को ओवरराइड नहीं किया जाना चाहिए .UseUrls()

मेरे मामले में यह चौथा कारण था, मैंने अपने ऐप पूल पर राइट क्लिक करके इसे बदल दिया, और प्रोसेस मॉडल के तहत उन्नत सेटिंग में, मैंने पर्याप्त अनुमति वाले उपयोगकर्ता की पहचान सेट की: मेरे एप्लिकेशन पूल की उपयोगकर्ता पहचान


1
यह वह उत्तर है जिसकी मुझे तलाश थी!, मेरे मामले में यह एप्लीकेशन पूल भी था ....
आर्मंडो रामिरेज़

3
धन्यवाद। मेरे मामले में समस्या डॉटनेट के रास्ते की थी। सिस्टम इवेंट व्यूअर में ऐसे लॉग पाए गए Failed to start process with commandline '"dotnet" .\PROJECT.dll', ErrorCode = '0x80070002':।
0x49D1

मैं एक और कारण जोड़ूंगा: "इंस्टॉलर VC + Redistributable प्राप्त करने में असमर्थ" क्योंकि मेरे सर्वर में कोई इंटरनेट कनेक्शन नहीं है, यह इस पैकेज को डाउनलोड नहीं कर सकता ... इसलिए, आपको इसे मैन्युअल रूप से डाउनलोड करना होगा: लिंक और इसे इंस्टॉल करें।
पैको मेंडेज़

4
dotnetमेरे रास्ते में था, लेकिन इसे पहचानने के लिए सर्वर के पुनरारंभ की आवश्यकता थी।
डैनी कलन 14

मेरे मामले में मुझे प्रकाशित कमांड में --runtime मान निर्दिष्ट करना होगा यदि मैं --framework विकल्प प्रदान करता हूं अन्यथा नहीं --framework करें और यह डिफ़ॉल्ट रूप से रनटाइम का पता लगा रहा है।
गोम्स

65

मुझे यह IIS के हार्ड रीसेट के साथ काम कर रहा था (मैंने केवल होस्टिंग पैकेज स्थापित किया था)।

पता चलता है कि सिर्फ IIS प्रबंधक में 'रीस्टार्ट' को दबाने से पर्याप्त नहीं है। मुझे बस एक कमांड प्रॉम्प्ट खोलना था और 'iisreset' टाइप करना था।


मैंने यूआई में वेबसर्वर रूट नोड पर हरे रंग के रीसायकल आईस को भी दबाया। यह मेरे लिए ऐप पूल के लिए उपयोगकर्ता सेटिंग के साथ संयुक्त रूप से हल हो गयाLocalSystem
जेपी हेल्लेमन्स 15

धन्यवाद माइकल ... इससे मेरी समस्या भी हल हो गई। कुछ घंटों के लिए जवाब की तलाश में था। धन्यवाद!
बीरविन

2
टीएक्स! आपके उत्तर ने मुझे एमएस डॉक्स से यह याद दिलाया "सिस्टम को फिर से शुरू करें या नेट स्टॉप निष्पादित करें / y के बाद नेट प्रारंभ w3svc कमांड प्रॉम्प्ट से सिस्टम PATH में परिवर्तन लेने के लिए शुरू हुआ।" (.NET कोर विंडोज सर्वर होस्टिंग बंडल स्थापित करने के बाद)
क्विंटन स्मिथ

मेरी समस्या का समाधान भी किया। साभार
मेट-यू

मेरे लिए काम किया। धन्यवाद :)
हुस्नैन शब्बीर

11

इसलिए मुझे एक नया सर्वर मिला, इस बार यह विंडोज 2008R2 है और मेरा ऐप ठीक काम करता है।

मैं यह सुनिश्चित करने के लिए नहीं कह सकता कि पुराने सर्वर के साथ समस्या क्या थी, लेकिन मेरे पास एक विचार है।

इसलिए, क्योंकि मैंने पहले किसी भी प्लेटफ़ॉर्म के बिना ऐप को संकलित किया था, इसने मुझे वह dllसंस्करण दिया जो केवल तभी काम करता है जब लक्ष्य होस्ट ने .Net Core Windows Hostingपैकेज स्थापित किया हो। मेरे मामले में यह स्थापित किया गया था और यह ठीक था

ऐप के काम नहीं करने के बाद मैंने इसे कंसोल ऐप के win7-x64रूप में रनटाइम के रूप में संकलित करने का निर्णय लिया । इस बार जब मैंने exeसर्वर पर अपना ऐप चलाया , तो यह एक लापता dll के बारे में एक त्रुटि के साथ दुर्घटनाग्रस्त हो गया:

The program can't start because api-ms-win-crt-runtime-l1-1-0.dll is missing

यह dll यूनिवर्सल C रनटाइम से है जो विजुअल C ++ Redistributable में Visual Studio 2015 के लिए शामिल है

मैंने उस पैकेज (दोनों x64 और x86) को स्थापित करने की कोशिश की, लेकिन यह हर बार विंडोज सर्वर 2012 R2 पर विफल रहा (पता नहीं क्यों)।

लेकिन जब मैंने उन्हें नए सर्वर, विंडोज सर्वर 2008 आर 2 में स्थापित करने की कोशिश की, तो वे सफलतापूर्वक स्थापित हो गए। इसके पीछे यही कारण रहा होगा, लेकिन फिर भी यह निश्चित रूप से नहीं कहा जा सकता है।


5

वेब ऐप प्रकाशित करते समय मेरे पास एक ही मुद्दा था। यदि किसी को अभी भी इस समस्या को {AppName} .runtimeconfig.json को बदलकर ठीक किया गया है

    {
  "runtimeOptions": {
    "framework": {
      "name": "Microsoft.NETCore.App",
      "version": "1.1.2"
    },
    "configProperties": {
      "System.GC.Server": true
    }
  }
}

संस्करण को "संस्करण": "1.1.2" से "संस्करण" में बदलें : "1.1.1" और एवरीथिन ने ठीक काम किया


5

मुझे भी यही समस्या थी।

इसका सटीक स्रोत जानने के लिए मैंने web.config फ़ाइल में लॉगिंग पर स्विच किया:

<aspNetCore processPath="dotnet" arguments=".\MyWebService.dll" stdoutLogEnabled="**true**" stdoutLogFile=".\logs\stdout" />

और MyWebService रूट फ़ोल्डर में लॉग सबफ़ोल्डर बनाया।

IIS को पुनरारंभ करने और API को निष्पादित करने की कोशिश करने के बाद मुझे एक त्रुटि मिली और यह उचित कोर रनटाइम से गायब था। DotNetCore.1.0.5_1.1.2-Windows -osting को डाउनलोड करने के बाद एक त्रुटि हो गई।


3
IMO आपको किसी भी भ्रम से बचने के लिए 'सही' मान से तारांकन हटा देना चाहिए।
अपरियोक्यूलस

4

एक ही मुद्दा था और सभी समाधान काम नहीं किया। इस मणि को मिला और सोचा कि अगर मैं किसी और की मदद करूं तो मैं भी पास हो जाऊंगा। DLL लापता त्रुटि हो रही सर्वर 2012 R2 पर स्थापित करें, VS C ++ 2015 को पुनर्स्थापित करने का प्रयास करें और एक त्रुटि प्राप्त करें। निम्नलिखित को ठीक करना है:

लगता है कि फ़ाइल C:\ProgramData\Package Cache\...\packages\Patch\x64\Windows8.1-KB2999226-x64.msuमें समस्याएँ हैं। ओपन एडमिन कमांड प्रॉम्प्ट करें:

c:
mkdir tmp
mkdir tmp\tmp
move "C:\ProgramData\Package Cache\...\packages\Patch\x64\Windows8.1-KB2999226-x64.msu" c:\tmp
expand -F:* c:\tmp\Windows8.1-KB2999226-x64.msu c:\tmp\tmp
dism /online /add-package /packagepath:c:\tmp\tmp\Windows8.1-KB2999226-x64.cab

नोट: सही फ़ोल्डर नाम के साथ "..." को बदलें। इसके बाद VS C ++ 2015 पैकेज को फिर से इंस्टॉल करें।


4

मेरे पास एक समान मुद्दा था, और शर्लक होम्स को उद्धृत करने के लिए: " जब आपने असंभव को समाप्त कर दिया है, तो जो कुछ भी रहता है, हालांकि, यह असंभव है, सच होना चाहिए? "

मैंने जाँच की कि क्या .NET फ्रेमवर्क मैं लक्ष्यीकरण सर्वर पर स्थापित किया गया था, और यह पता चला कि यह नहीं था। मैंने 4.6.2 .NET फ्रेमवर्क स्थापित किया और यह काम किया।


4

मेरे वीएस प्रोजेक्ट के स्वतः .NET .NET 1.1.2 में अपग्रेड होने के बाद मुझे अपने प्रोडक्शन सर्वर पर यह समस्या मिली।

मैंने अपने उत्पादन सर्वर पर यहाँ से 1.1.2 .net कोर रनटाइम स्थापित किया: https://www.microsoft.com/net/download/core#/untime


मैं एक ही मुद्दे पर भागा, लेकिन नए जारी नेट कोर 2.0.6 के साथ। एक प्रोडक्शन सर्वर पर नेट कोर एसडीके 2.0.6 स्थापित करके तय किया गया
डोडब्रियन

4

SOLVED I केवल AZURE परिनियोजित करते समय उसी मुद्दे के माध्यम से चला । फिर मैंने स्थानीय आईआईएस के लिए भी यही कोशिश की, वही मुद्दा मिला। जैसा कि मैं नया .net कोर, नया हूँ, इससे पहले कि मैं वास्तव में हल किया कुछ घंटे संघर्ष किया।

हमारे समाधान में, आईआईएस में प्रकाशित होने के बाद, मैंने अपनी web.confile फ़ाइल देखी, विशेष रूप से लाइन के नीचे <aspNetCore processPath="bin\IISSupport\VSIISExeLauncher.exe" arguments="-argFile IISExeLauncherArgs.txt" forwardWindowsAuthToken="false" stdoutLogEnabled="false" />

हमारे परिनियोजन फ़ोल्डर में उत्पन्न web.config जैसा दिखता है:<aspNetCore processPath="dotnet" arguments=".\Yodlee.dll -argFile IISExeLauncherArgs.txt" forwardWindowsAuthToken="false" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />

अब दृश्य स्टूडियो समाधान में उपरोक्त कॉन्फ़िगरेशन को बदलने का प्रयास करें<aspNetCore processPath="bin\IISSupport\VSIISExeLauncher.exe" forwardWindowsAuthToken="false" stdoutLogEnabled="false" />

हमारे नए परिनियोजन फ़ोल्डर में उत्पन्न web.config ऐसा दिखता है:<aspNetCore processPath="dotnet" arguments=".\Yodlee.dll" forwardWindowsAuthToken="false" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />

और इसने मेरी समस्या हल कर दी, आशा है कि यह मदद करेगा।


हे @ एग्नि, यह मेरे लिए काम किया, धन्यवाद। लेकिन, हर बार जब मैं प्रोजेक्ट को फिर से Azure में प्रकाशित करने का प्रयास करता हूं, तो इसे फिर से बनाया जाता है, और web.config स्वचालित रूप से मूल एक में वापस बदल दिया जाता है, जिस हिस्से के कारण समस्या होती है: "-argFile IISExeLaLerArgs.txt"। क्या आपने उसके लिए कोई समाधान खोजा? (मैं asp.net कोर 2.0 का उपयोग कर रहा हूं)।
रोड्रिगो पीयर

1
मेरे मामले में मैं बदलना पड़ा processPath="dotnet"करने के लिए processPath="C:\Program Files\dotnet\dotnet.exe"। तब इसने काम किया।
vaheeds

3

जब मैं अपने देव मशीन को कोर 1.0.1 को अद्यतन करता था, तो मुझे वही समस्या थी, लेकिन सर्वर को अपडेट करना भूल गया।


मेरे लिए मैंने यहाँ से net core SDK को फिर से इंस्टॉल किया: microsoft.com/net/core#windows फिर इसने काम किया।
जीन

1
VS2017 अब .NET कोर 1.1 डिफ़ॉल्ट रूप से है - सभी दूरस्थ सर्वरों को IIS में अपग्रेड किए गए प्रोजे को प्रकाशित करने से पहले अपडेट करने की आवश्यकता है। आप अधिक उपयोगी त्रुटि संदेश प्राप्त कर सकते हैं (".NET कोर 1.1 स्थापित नहीं है") लेकिन चल रहा हैdotnet .\YOURPROJDLL.dll
Coruscate5

3

मैं अपने .NET Core 2.0 API को AWS EB में प्रकाशित करने का प्रयास करते समय HTTP त्रुटि 502.5 प्राप्त कर रहा था, और .csproj में निम्न कोड जोड़कर इसे हल किया:

  <PropertyGroup>
    <PublishWithAspNetCoreTargetManifest>false</PublishWithAspNetCoreTargetManifest>
  </PropertyGroup>

2

मेरे पास एक ही मुद्दा था। मैंने एप्लिकेशन पूल पहचान को नेटवर्क सेवा खाते में बदल दिया। तब मैं स्पष्ट रूप से पथ काम करने के लिए आवेदन के लिए web.config ठीक से के रूप में @danielyewright उसकी में कहा में dotnet.exe करने के लिए सेट GitHub टिप्पणी। यह पथ निर्धारित करने के बाद काम करता है।

धन्यवाद


2

साझा करना है कि मेरे मामले में यह त्रुटि थी क्योंकि मैं अद्यतन करने के लिए भूल गया project.json साथ:

"buildOptions": {
    "emitEntryPoint": true
  }

2

मुझे प्रश्न में वही त्रुटि थी, जिसमें प्रस्तावित उत्तर में VSG24 द्वारा वर्णित समान मुद्दों के साथ - सीएमडी में 'डॉटनेट' टाइप करते समय गंदा त्रुटि संदेश:

कार्यक्रम शुरू नहीं हो सकता क्योंकि एपी-एमएस-विन-क्रेट-रनटाइम-एल -1-1-0.dll गायब है

मैंने इसे Windows Server 2012 R2 (और पूर्व-अपेक्षित और जुड़े हुए अन्य सभी अपडेट - Microsoft वेबसाइट पर सावधानीपूर्वक इंस्टॉलेशन निर्देश पढ़ें) पर निम्नलिखित 2 अपडेट मैन्युअल रूप से इंस्टॉल करके हल किया है :

  1. KB2919355
  2. KB2999226

आशा है कि यह किसी की मदद करता है।


2

मुझे उसी समस्या का सामना करना पड़ा जब मैंने अपने वेब एप्लिकेशन के डिबग संस्करण को प्रकाशित करने का प्रयास किया। फ़ाइलों के इस सेट web.configमें विशेषता के उचित मान वाली फ़ाइल नहीं थी processPath

मैंने इस फ़ाइल को रिलीज़ संस्करण से लिया है, मान को मेरे exe फ़ाइल को पथ सौंपा गया था।

<aspNetCore processPath=".\My.Web.App.exe" ... />

2

मेरे मामले में सर्वर पर स्थापित नेट कोर संस्करण के साथ समस्या थी। मैं अपने विकास मशीन पर बस एक ही संस्करण स्थापित करता हूं और सब कुछ ठीक है :-)



2

मैंने साइट के एप्लिकेशन में "एडिट अनुमति" को जोड़कर इसे हल किया, भौतिक निर्देशिका में मैप किया और फिर उन विंडोज़ उपयोगकर्ता का चयन किया जो इस रूट फ़ोल्डर तक पहुंच सकते थे। (प्राइवेट नेटवर्क)।


2

मेरे मामले में, स्थापित करने के बाद AspNetCore.2.0.6.RuntimePackageStore_x64.exeऔर DotNetCore.2.0.6-WindowsHosting.exe, मुझे 502 खराब गेटवे और प्रॉक्सी त्रुटि के बिना काम करने के लिए सर्वर को पुनरारंभ करने की आवश्यकता है ।

अपडेट करें:

एक ऐसा तरीका है जिसे आप बिना पुनरारंभ किए उपयोग कर सकते हैं: https://stackoverflow.com/a/50808634/3634867


2

व्यवस्थापक क्रेडेंशियल्स के साथ ओपन कमांड प्रॉम्प्ट

निम्न आदेश टाइप करें और हिट दर्ज करें

> IISRESET

या

व्यवस्थापक क्रेडेंशियल्स के साथ दृश्य स्टूडियो 2017 खोलें

पैकेज मैनेजर कंसोल में निम्न कमांड टाइप करें और एंटर दबाएं

PM > IISRESET

PM> IISRESET
Attempting stop...
Internet services successfully stopped
Attempting start...
Internet services successfully restarted

2

मेरे लिए यह .Net कोर के विभिन्न संस्करणों के स्थापित होने के कारण हुआ। मैंने अपने देव और प्रोडक्शन सर्वर का मिलान किया और यह काम कर गया।


1

मुझे यह समस्या अस्वस्थ लगी (त्रुटि VS 15 और 17 दोनों को हुई)। हालांकि वीएस 15 पर इसे एक CONNECTION_REFUSEDत्रुटि मिली और वीएस 17 पर यह वापस आ गया ASP.NET Core 1.0 on IIS error 502.5

ठीक कर

  1. अपनी प्रोजेक्ट निर्देशिका पर नेविगेट करें और छिपे हुए फ़ोल्डर का पता लगाएं .vs(यह प्रोजेक्ट फ़ोल्डर dir में स्थित है)। (छुपी हुई फ़ाइलें / फ़ोल्डर दिखाना याद रखें)

  2. बंद वी.एस.

  3. .Vs- फोल्डर को डिलीट करें
  4. VS को व्यवस्थापक के रूप में प्रारंभ करें (.vs- फ़ोल्डर VS द्वारा पुनः बनाया जाएगा)

1

यह वही है जो मैंने सोचा था, और यह हाल ही में विंडोज 10 पर एक अद्यतन स्थापित होने के बाद हुआ। जो मैंने इकट्ठा किया था, उससे एक विंडोज डिफेंडर अपडेट स्थापित किया गया था, जिसे मेरा "Project.dll" (एक asp.net कोर प्रोजेक्ट) एक वायरस की तरह व्यवहार किया गया था, इसलिए इसे हटा दिया गया था।

इसलिए, सामान को अनइंस्टॉल / अनइंस्टॉल करने की शुरुआत करने से पहले मैं आपको जो सुझाव देता हूं, उनमें से एक यह है कि आप अपने "प्रोजेक्ट.डेल" की पुष्टि करें कि यह कहां होना चाहिए।

अगर यह अब नहीं है तो इसे वापस लोकेशन पर कॉपी करें।

यदि आपको फ़ाइल को कॉपी करने में कठिनाई हो रही है, तो अपने प्रोजेक्ट फ़ोल्डर में विंडोज़ डिफेंडर में एक बहिष्करण जोड़ें । ( जानें कि यहां कैसे करना है ।)

यह मेरे लिए तुरन्त काम आया, और मैंने इसे कई सर्वरों पर दोहराया।


1

मेरे लिए यह था कि Startup.cs में कनेक्शनस्ट्रिंग शून्य था:

services.AddDbContext<ApplicationDbContext>(options => options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));

और यह अशक्त था क्योंकि एप्लिकेशन कनेक्शन स्ट्रिंग के लिए appsettings.json में नहीं देख रहा था।

Program.cs को इसमें बदलना था:

public static void Main(string[] args)
{
    BuildWebHost(args).Run();
}

public static IWebHost BuildWebHost(string[] args) =>
     WebHost.CreateDefaultBuilder(args)
     .ConfigureAppConfiguration((context, builder) => builder.SetBasePath(context.HostingEnvironment.ContentRootPath)
     .AddJsonFile("appsettings.json").Build())
     .UseStartup<Startup>().Build();

1

मुझे नहीं पता कि यह मेरे लिए क्यों काम किया, लेकिन मैं विंडोज ऑथेंटिकेशन का उपयोग कर रहा हूं और मेरे पास इस पर थोड़ा सा कोड BuildWebHostथा Program.cs:

.UseStartup<Startup>()
.UseHttpSys(options =>
{
    options.Authentication.Schemes =
        AuthenticationSchemes.NTLM | AuthenticationSchemes.Negotiate;
    options.Authentication.AllowAnonymous = false;
})
.Build();

.UserHttpSysबिट को हटाने के बाद , यह अब काम करता है, और मैं अभी भी एक डोमेन उपयोगकर्ता के रूप में प्रमाणित कर सकता हूं।

BuildWebHost अब जैसा दिखता है

public static IWebHost BuildWebHost(string[] args) =>
    WebHost.CreateDefaultBuilder(args)
    .UseStartup<Startup>()
    .Build();

मैं एस्पनेट कोर में कुकी प्रमाणीकरण कर रहा हूं। मैं कैसे कॉन्फ़िगर करूं?
kudlatiger

@kudlatiger क्षमा करें, मुझे यकीन नहीं है - आपका सबसे अच्छा शर्त एक अलग सवाल बनाने के लिए है
Bassie

1

मुझे वही त्रुटि मिल रही थी, और यह पता चला कि अज़ुरे को प्रकाशित करने के दौरान, मेरी web.config फ़ाइल को संशोधित किया गया था, इसलिए यह निम्नलिखित पंक्ति इस प्रकार समाप्त हुई:

<aspNetCore processPath="bin\IISSupport\VSIISExeLauncher.exe" arguments="-argFile IISExeLauncherArgs.txt" forwardWindowsAuthToken="false" stdoutLogEnabled="false" startupTimeLimit="3600" requestTimeout="23:00:00" />

उत्पादन के लिए समस्या तर्कों की सामग्री है: "-ggileile IISExeLauncherArgsxt"

ऐसा लगता है कि यह मुद्दा अगले .NET कोर SDK (वर्तमान में पूर्वावलोकन) में संबोधित किया जा रहा है, लेकिन अभी के लिए, इस ब्लॉक को .csproj फ़ाइल में जोड़ना है:

<Target Name="bug_242_workaround" AfterTargets="_TransformWebConfig">
    <Exec Command="powershell &quot;(Get-Content '$(PublishDir)Web.config').replace(' -argFile IISExeLauncherArgs.txt', '') | Set-Content '$(PublishDir)Web.config'&quot;" />
  </Target>

यह web.config को संशोधित करेगा और प्रकाशन के लिए समस्याग्रस्त भाग को हटा देगा।

संदर्भ: https://github.com/aspnet/websdk/issues/242

आशा करता हूँ की ये काम करेगा।


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

1

प्रकाशन कॉन्फ़िगरेशन बदलने के बाद मेरे लिए काम किया।

यहां छवि विवरण दर्ज करें


क्षमा करें, मैं अपने संगठन में चित्र नहीं देख सकता। चित्र डाउनलोड अवरुद्ध हैं (अधिकांश संगठन पर)।
अगस्टे

0

मेरे पास एक ऐसा ही मुद्दा था (Asp.Net Core 2.x) जो 64-बिट विंडोज़ सर्वर पर IIS में 32-बिट asp.net कोर ऐप को चलाने की कोशिश के कारण हुआ था। मूल कारण यह था कि वेब.कॉन्फ़िग जो ऑटो-जेनरेट किया जाता है (यदि आपकी परियोजना में स्पष्ट रूप से एक शामिल नहीं है, जो asp.net कोर प्रोजेक्ट डिफ़ॉल्ट रूप से नहीं है) में डॉटनेट निष्पादन योग्य के लिए पूर्ण पथ शामिल नहीं है। जब आप 64 बिट मशीन पर होस्टिंग बंडल स्थापित करते हैं, तो यह डॉटनेट के 64 और 32 बिट संस्करणों को स्थापित करेगा, लेकिन पथ डिफ़ॉल्ट रूप से 64 बिट पर सेट हो जाएगा और आपका 32 बिट asp.net कोर ऐप लोड करने में विफल हो जाएगा। आपके ब्राउज़र में आपको 502.5 त्रुटि दिखाई दे सकती है और यदि आप सर्वर इवेंट लॉग देखते हैं तो आपको त्रुटि कोड 0x80004005 दिखाई दे सकता है। यदि आप उस सर्वर पर अपने asp.net कोर एप्लिकेशन dll को लोड करने के लिए कमांड प्रॉम्प्ट से dotnet.exe चलाने की कोशिश करते हैं, तो आपको "BadImageFormatException" या "जैसी त्रुटि दिखाई दे सकती है"

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <location path="." inheritInChildApplications="false">
        <system.webServer>
            <handlers>
                <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
            </handlers>
            <aspNetCore processPath="C:\Program Files (x86)\dotnet\dotnet.exe" arguments=".\My32BitAspNetCoreApp.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />
       </system.webServer>
   </location>
</configuration>

0

मुझे वही समस्या मिली और मेरे मामले में कारण यह था कि ईएफ कोर appsettings.development.jsonफ़ाइल से कनेक्शन स्ट्रिंग को पढ़ने की कोशिश कर रहा था । मैंने इसे खोला और पाया कि कनेक्शन स्ट्रिंग पर टिप्पणी की गई थी।

//{
//  "ConnectionStrings": {
//    "DefaultConnection": "Server=vaio;Database=Goldentaurus;Trusted_Connection=True;",
//    "IdentityConnection": "Server=vaio;Database=GTIdentity;Trusted_Connection=True;"
//  }
//}

मैंने तब उन्हें नीचे की तरह uncommitted किया और समस्या हल हो गई:

{
  "ConnectionStrings": {
    "DefaultConnection": "Server=vaio;Database=Goldentaurus;Trusted_Connection=True;",
    "IdentityConnection": "Server=vaio;Database=GTIdentity;Trusted_Connection=True;"
  }
}
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.