2010-11-08 25 views
14

से रिमोट आईआईएस सर्वर पर चल रहे डीबग एएसपी.NET एप्लिकेशन को बस आश्चर्य हुआ कि क्या कोई मुझे सही दिशा में इंगित कर सकता है?वीएस -2010

मैं एक तैनात वेब अनुप्रयोग डिबग करने के लिए कोशिश कर रहा हूँ और काम करने के लिए देते हैं पाने के लिए नहीं कर पा रहे। यहां परिदृश्य है:

वीएस -2010 मेरी मशीन पर स्थापित - सभी स्रोत कोड के साथ।

उत्पादन आईआईएस सर्वर पर ASP.NET साइट के लिए मेरी मशीन ब्राउज़िंग पर

IE8 (उत्पादन साइट पर FWIW .pdb फ़ाइलें।)

जब मैं IE सत्र के लिए डीबगर देते हैं, और साइट ब्राउज़, कोई ब्रेकप्वाइंट कभी हिट है ... तो प्रभावशाली रूप से मुझे नहीं लगता कि मैं वास्तव में साइट को डीबग कर रहा हूं !?

मुझे लगता है कि मुझे किसी प्रकार की रिमोट डीबगिंग सेट अप की आवश्यकता है? यदि ऐसा है, तो अगर कोई मदद करने के लिए किसी भी यूआरएल के बारे में जानता है तो इसकी बहुत सराहना की जाएगी!

अग्रिम धन्यवाद!

जिम

उत्तर

9

यहाँ सिर्फ इतना है कि ऐसा करने के लिए एक अच्छा लेख है:

http://msdn.microsoft.com/en-us/library/bt727f1t.aspx

दूरस्थ कंप्यूटर पर दूरस्थ डीबगिंग घटकों को स्थापित करें और दूरस्थ डीबगिंग मॉनिटर (msvsmon.exe) जब आप का शुभारंभ डीबगिंग

+0

हालांकि यह मुझे सब मैं जरूरत दे didin't ... इस सवाल को देखने के /स्टैक ओवरफ़्लो।कॉम/प्रश्न/4213286/कैसे-से-डीबग-ए-तैनाती-वेब साइट – BIDeveloper

20

यहां एक पूर्ण चरण-दर-चरण मार्गदर्शिका है क्योंकि बहुत सारी बिखरी हुई जानकारी और लिंक किए गए Microsoft आलेख मानते हैं बहुत सारी जानकारी।

पहले गाइड के बाकी भर में इस्तेमाल की शर्तें स्पष्ट करते हैं:

diagram

ग्राहक कंप्यूटर जिस पर आप विकास करना
रिमोट कंप्यूटर कोड तैनात किया गया है है है आईआईएस

  1. msvsmon इंस्टॉल करें .exe (एम ICRO रों बहुधा वी isual एस tudio सोम itor) दूरस्थ कंप्यूटर पर।
    आप निष्पादन योग्य निम्नलिखित पथ पर अपने मुवक्किल पर दृश्य स्टूडियो के साथ स्थापित पा सकते हैं:

    new server

    : जब उपकरण तैयार होकर चलने लगे
    C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\Remote Debugger\x86

    , तो आपको निम्न आवेदन देखना चाहिए डिबगिंग मॉनीटर ने एक सर्वर बनाया है जिसे आप दूरस्थ रूप से कनेक्ट कर सकते हैं। यदि आप विंडोज मशीन पर हैं, तो नाम शायद [email protected] है। इस नाम को याद रखें, क्योंकि आपको बाद में इसकी आवश्यकता होगी।अगर आप इसे सीधे कॉपी करना चाहते हैं, तो आप टूल्स> विकल्प पर जा सकते हैं और आपको सर्वर का नाम दिखाई देगा। यदि आप चाहें तो आप इसे किसी और चीज़ में भी बदल सकते हैं।

  2. यहां से आप शॉटगन दृष्टिकोण का प्रयास कर सकते हैं और देख सकते हैं कि सब कुछ काम करता है, लेकिन आपके नेटवर्क कॉन्फ़िगरेशन के आधार पर, कुछ अतिरिक्त हिचकी हो सकती हैं। दूरस्थ रूप से डीबग करने का प्रयास करने के लिए, विजुअल स्टूडियो में प्रोजेक्ट खोलें। यह एक ही सटीक परियोजना होनी चाहिए जो आईआईएस पर तैनात है।

    विजुअल स्टूडियो में, आप नए सर्वर पर प्रक्रिया से जुड़ना चाहेंगे। Ctrl को संसाधित करने संलग्न> उपकरण पर जाएं या मारा + Alt + पी

    attach to process

  3. में, संवाद प्रक्रिया अपने वर्तमान कंप्यूटर के नाम से नए सर्वर नाम के क्वालीफायर बदलने के लिए संलग्न ([email protected]) और हिट किसी दूरस्थ कंप्यूटर पर उपलब्ध प्रक्रियाओं की सूची देखने के लिए दर्ज करें:

    attach dialog

  4. अगर सबकुछ तुरंत वापस आता है, तो आप अच्छे हाथों में हैं। इसका मतलब है कि रिमोट सर्वर से कनेक्ट होने से आपको कोई फ़ायरवॉल नीतियां नहीं रोक रही हैं, और आप चरण 6 पर जा सकते हैं।

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

    Unable to connect to the Microsoft Visual Studio Remote Debugging Monitor named 'User@Remote'. The Visual Studio Remote Debugger on the target computer cannot connect back to this computer. A firewall may be preventing communication via DCOM to the local computer. Please see Help for assistance.

  5. यदि आप कनेक्ट करने में सक्षम नहीं थे, फिर आपके डोमेन नीतियों के आधार पर समस्याओं की सीमा हो सकती है। आधिकारिक फ़ायरवॉल सेटअप के लिए, आप माइक्रोसॉफ्ट के Configure the Windows 7 Firewall for Remote Debugging देख सकते हैं, लेकिन मुझे यह विस्तार से कमी की जानकारी मिली।

    तो संलग्न विफल रहा है, लेकिन आप अभी भी संदेश उपयोगकर्ता इस तरह जुड़ा हुआ है कि मिल: इसका मतलब है कि समस्या क्लाइंट पर आउटबाउंड नियम या पर भीतर का नियमों के साथ नहीं है

    connected

    फिर रिमोट सर्वर। क्लाइंट मशीन पर इनबाउंड नियमों के साथ यह मुद्दा अधिक संभावना है।

    इसे ठीक करने के लिए, क्लाइंट कंप्यूटर पर, नियंत्रण कक्ष> विंडोज फ़ायरवॉल> उन्नत सेटिंग्स पर जाएं जो उन्नत सुरक्षा के साथ विंडोज फ़ायरवॉल खोलना चाहिए। एक नया नियम दर्ज करने के लिए इनबाउंड नियम और दाएँ क्लिक का चयन करें:

    new rule

    नियम किसी भी नाम दें। this SO question में सलाह के आधार पर, विशेष बंदरगाहों को छूट देने के बजाय, हम किसी भी विजुअल स्टूडियो निष्पादन योग्य के लिए सभी ट्रैफिक को जाने की अनुमति देंगे। कार्यक्रम और सेवाओं पर जाएं और 2010 तक पूर्ण फ़ोल्डर पथ का चयन करें दृश्य स्टूडियो की स्थापना:
    %ProgramFiles% (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe

    तो सुनिश्चित करें कि नियम केवल डोमेन के भीतर मौजूद कंप्यूटर पर लागू होता है बनाने के (सुनिश्चित करें कि निजी बनाने और जनता के अनियंत्रित हैं)।

    visual studio rule

    किसी भी भाग्य के साथ

    , जब आप प्रक्रिया संलग्न करने के लिए वापस जाने के लिए, आप दूरस्थ मशीन में प्राप्त करने में सक्षम होना चाहिए।

  6. इस बिंदु पर, आपको दूरस्थ मशीन पर सभी प्रक्रियाओं की एक सूची देखना चाहिए। यदि आप विंडोज़ एप्लिकेशन को डीबग करना चाहते हैं, तो आप बस प्रक्रिया का नाम लेंगे। एएसपी.नेट के लिए, हम w3wp.exe (WWW डब्ल्यू ऑकर पी रोकेस से अटैच करना चाहते हैं)। यदि आप इसे सूची में नहीं देखते हैं, तो उस एप्लिकेशन के वेबपृष्ठ को खोलकर सर्वर को लात मारने का प्रयास करें जिसे आप डीबग करना चाहते हैं। आप इसे स्थानीयहोस्ट पर या किसी भी कंप्यूटर से आईआईएस में पते पर नेविगेट करके कर सकते हैं।

    attach dialog connected

    आपके आवेदन के लिए कोड का सही प्रकार से संलग्न करना सुनिश्चित करें। आप देशी (सी ++, इत्यादि) या प्रबंधित (वीबी, सी #, आदि) के बीच चयन कर सकते हैं, या स्वचालित का चयन कर सकते हैं और विजुअल स्टूडियो का निर्णय ले सकते हैं।

  7. आप निम्नलिखित त्रुटि मिलती है, मैंने पाया है कि दृश्य स्टूडियो को फिर से खोलने और व्यवस्थापक विशेषाधिकारों के साथ msvsmon.exe मुद्दा

    Unable to attach to the process. The Visual Studio Remote Debugger (MSVSMON.EXE) has insufficient privileges to debug this process. To debug this process, launch the remote debugger using 'Run as administrator'. If the remote debugger has been configured to run as a service, ensure that it is running under an account that is a member of the Administrators group.

  8. आप को सुरक्षा चेतावनी है कि आप द्वारा स्वीकार कर सकते हैं देखेंगे तय पर क्लिक संलग्न करें:

    security warning

  9. पिछले मुद्दा मैं r एक डीबगर फ़ाइलों को लोड करने के लिए प्राप्त किया गया था। आपको यह सुनिश्चित करने की ज़रूरत है कि जिन पुस्तकालयों को निष्पादित किया जा रहा है वे वास्तव में उन लोगों से मेल खाते हैं जो वर्तमान में दृश्य स्टूडियो में लोड हैं और उनके पास क्लाइंट मशीन पर समाधान में सही .pdb फ़ाइलें हैं। आप निरीक्षण कर सकते हैं जो मॉड्यूल लोड किया गया है और जहाँ वे डीबग> विंडोज> मॉड्यूल के लिए जा रहा या Ctrl +Alt + यू मारकर से भरी हुई। लोड हो रहा है डिबगर फाइलों पर अधिक जानकारी के लिए, आप भी निम्न संसाधनों के किसी भी कोशिश कर सकते हैं:

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

Proof of Concept

इसके अलावा पढ़ना: http:/

+0

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