2016-12-14 6 views
8

हमारे पास हमारे परीक्षण सर्वर पर चल रही एक एएसपी.नेट कोर साइट है जिसे हम अपने आईआईएस वेब सर्वर पर एक्सकॉपी द्वारा स्वत: तैनाती करना चाहते हैं क्योंकि हम अपने वर्तमान ऐप्स करते हैं, जहां मेरे पास पहले से ही साइट चल रही है। मैंने एक प्रकाशित प्रोफ़ाइल जोड़ा है जो समाधान के भीतर साइट को "प्रकाशित-स्थानीय" निर्देशिका में पैकेज करता है। जब भी मैं मौजूदा साइट पर प्रतिलिपि बनाने की कोशिश करता हूं, तो सभी डीएलएल का इस्तेमाल किसी अन्य प्रक्रिया द्वारा किया जा रहा है, संभवतः केस्ट्रेल, इसलिए मुझे भाई निर्देशिका में तैनात करने के लिए मजबूर होना पड़ता है और भाई को देखने के लिए आईआईएस को फिर से मैप करना पड़ता है। मैन्युअल रूप से हस्तक्षेप किए बिना और केस्ट्रल या आईआईएस वेब सर्वर को रोकने के बिना किसी एक चल रहे एएसपी.NET कोर साइट को कैसे अपडेट करता है?मैं वेब सर्वर को रोकने के बिना मौजूदा/चल रही साइट पर ASP.NET कोर ऐप कैसे अपडेट कर सकता हूं?

उत्तर

1

हम जो छोटी चीट का उपयोग करते हैं, वह पहले पुरानी फाइलों का नाम बदलना है (my.dll.old जैसे कुछ), फिर नए डीएलएस पर प्रतिलिपि बनाएँ। फिर आप या तो ऐप पूल पुनरारंभ करने के लिए मजबूर या प्रतीक्षा कर सकते हैं।

+1

मैं एमएसबीयूआईएलडी और टीमसिटी का उपयोग कर वेब सर्वर पर प्रतिलिपि बनाने की कोशिश कर रहा हूं। क्या केस्ट्रेल नाम को अवरुद्ध नहीं करता है? – flipdoubt

+0

यदि फ़ाइलें उपयोग में हैं, तो वे निश्चित रूप से नाम बदलने की अनुमति नहीं देंगे। – QuietSeditionist

+1

आप वास्तव में उपयोग की जाने वाली फ़ाइल का नाम बदल सकते हैं। – Pawel

2

आईआईएस के साथ चलते समय आप अपने आवेदन फ़ोल्डर में app_offline.htm (केस संवेदनशील) नामक एक फ़ाइल छोड़ सकते हैं। आईआईएस आपके आवेदन को रोक देगा और app_offline.html फ़ाइल की सामग्री की सेवा करेगा। अब आप अपने आवेदन की प्रतिलिपि बना सकते हैं। एक बार समाप्त हो गया app_offline.html को हटा दें और आईआईएस आपका ऐप शुरू करेगा। यह आईआईएस के साथ Asp.NET कोर ऐप्स चलाने पर docs और my post में भी वर्णित है।

+0

app_offline.htm के साथ भी, yourwebsite.exe अभी भी उपयोग में है और आप नए संस्करण की प्रतिलिपि नहीं बना सकते हैं। App_offline.htm और एक एप्लिकेशन पूल रीसेट _then_ के साथ ऐसा लगता है कि आप yourwebsite.exe की प्रतिलिपि बना सकते हैं, लेकिन केवल app_offline.htm डालने के लिए पर्याप्त नहीं है। –

+0

मेरी समझ यह है कि app_offline.html डालना पर्याप्त होना चाहिए। आईआईएस आपके आवेदन को शानदार तरीके से रोकने की कोशिश करता है ताकि आवेदन प्रक्रिया को रोकने के लंबित अनुरोध तत्काल न हों। यदि आपको app_offline.html डालने के बाद एप्लिकेशन को रोका नहीं जा रहा है, तो मैं इस रेपो में कोई समस्या खोलने का सुझाव देता हूं: https://github.com/aspnet/AspNetCoreModule – Pawel

+1

मुझे ऐसा लगता है, लेकिन यह एक मुद्दा है अभी के खिलाफ कूद रहा है। मेरे टीएफएस बिल्ड में मेरे पास एक powerhell स्क्रिप्ट है जो app_offline.htm में रखती है, यह कुछ सेकंड प्रतीक्षा करती है, यह आईआईएस को एक अनुरोध सबमिट करती है और एप्लिकेशन को ऑफ़लाइन दिखाते हुए 503 त्रुटि वापस ले जाती है ... फिर भी mywebsite.exe _still_ के लिए बंद है संपादन और डॉटनेट प्रकाशन विफल रहता है। :(मुझे लगता है कि मैंने आपके द्वारा सुझाए गए रेपो को कोई समस्या सबमिट कर दी है, क्योंकि मैं सहमत हूं - app_offline.htm पर्याप्त होना चाहिए। –

संबंधित मुद्दे

 संबंधित मुद्दे