2008-09-19 13 views
50

मुझे पता चला है कि कुछ अवसरों पर मैं डीबगिंग के दौरान स्रोत को संपादित कर सकता हूं, क्या आईआईएस में वर्चुअल निर्देशिका के बजाय विजुअल स्टूडियो बिल्ट-इन वेबसर्वर का उपयोग करने के कोई अन्य फायदे हैं?आईआईएस के बजाय कैसिनी का उपयोग करने के (डी) फायदे क्या हैं?

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

क्या कोई नुकसान है?

उत्तर

57

दृश्य स्टूडियो के लिए वेब सर्वर में बनाया गया कैसिनी कहा जाता है और यहां की अपनी सीमाएं के कुछ ही रहे हैं ...

  • यह बंदरगाह में केवल एक ASP.NET आवेदन होस्ट कर सकते हैं।
  • यह HTTPS का समर्थन नहीं करता है।
  • यह प्रमाणीकरण का समर्थन नहीं करता है।
  • यह केवल स्थानीयहोस्ट अनुरोधों का जवाब देता है।
  • धीरे स्टार्टअप आईआईएस
+0

आपके बुलेट लाइन ब्रेक को फिक्स्ड करें, और https और प्रमाणीकरण टिप्पणियों के लिए ऊपर उठाए गए हैं (अलग-अलग उत्तरों से आपको दो वोट मिलेंगे)। –

+2

एलओएल, मैंने उन्हें भी तय किया :) – pdavis

+0

"यह केवल स्थानीयहोस्ट अनुरोधों का जवाब देता है" ... पर्याप्त तनाव नहीं दे सकता! इससे वास्तविक वेब सेवा – mcjabberz

1

यदि आप XP होम का उपयोग करके घर पर शौक काम करते हैं, तो आप स्थानीय रूप से आईआईएस इंस्टॉल नहीं कर सकते हैं।

+2

मुझे लगता है कि एमएस वेब प्लेटफार्म इंस्टालर इस सीमा को हटा देता है (मैं विस्टा होम पर आईआईएस स्थापित करने में सक्षम था) –

+2

@ डैन फिंच विस्टा होम आईआईएस चला सकता है। एक्सपी होम नहीं कर सकता। –

0

IISAdmin स्थापित करें, और आप वर्चुअल निर्देशिकाओं का उपयोग करने के बजाय आईआईएस 5 में अलग-अलग साइट्स सेट कर सकते हैं।

+0

हालांकि एक समय में केवल एक ही चलाते हैं। –

+0

यह एक बड़ा नुकसान है और केवल यथार्थवादी नहीं है - केवल आईआईएस का उपयोग करें और आप जो भी चाहें कर सकते हैं, जो कुछ भी चल रहा हो। – PositiveGuy

5

निर्मित सर्वर बड़े निगमों के लिए अच्छी तरह से काम करता है जो डेवलपर्स को आईआईएस को कॉन्फ़िगर करने के लिए अपनी मशीनों पर कोई व्यवस्थापक पहुंच नहीं देना चाहते हैं।

+2

मुझे खेद है, लेकिन एक कंपनी (कोई भी आकार) एक डेवलपर को ऐसा क्यों करना चाहती है। यह तो बेवकूफी है।हमें उन देशी उपकरणों का उपयोग करने से रोकें जिन्हें प्रत्येक डेवलपर को पता होना चाहिए - इस मामले में आईआईएस को समझना और समझना बेहतर है जो आपको एक बेहतर वेब डेवलपर के साथ-साथ जब भी आप आईआईएस अच्छी तरह जानते हैं, तो आप अपने डीबगिंग के घंटे बचाते हैं वेब एप्स – PositiveGuy

+0

@CoffeeAddict मैं उन कंपनियों में से एक में काम करता हूं। मैं देख सकता हूं कि कॉर्पोरेट सुरक्षा कैसे सोचती है कि यह एक अच्छा विचार है, लेकिन एक डेवलपर के रूप में यह वास्तव में मेरे रास्ते में आता है। सौभाग्य से, वे डेवलपर्स के लिए अपवादों की अनुमति देते हैं जो पर्याप्त हुप्स (मैं हमेशा उन हुप्स के माध्यम से जाता हूं) के माध्यम से जाने के इच्छुक हैं। – Zarepheth

1

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

+2

वीएस में बंदरगाह को कॉन्फ़िगर करना संभव है। प्रोजेक्ट-> गुण-> विशिष्ट पोर्ट – pdavis

-1

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

+0

भेजते हैं तो यह आपके स्वयं के HTTP प्रमाणीकरण प्रदान करने की अनुमति देता है जब आप आईआईएस में सभी के साथ परीक्षण कर सकते हैं, तो बाद में परीक्षण क्यों करें वास्तव में सभी एएसपी.NET के लिए अपना कोड चलाना होगा? बस जब आप डीबग करना चाहते हैं तो आप 2 सेकंड बचा सकते हैं? एक अच्छा व्यापार नहीं है ... आप आईआईएस अवधि का उपयोग कर अंत में और अधिक परेशानी बचाते हैं और अधिक सीखते हैं। गधे में – PositiveGuy

2

यदि आप अंतर्निहित वेबसर्वर पर वेब सेवाओं के लिए यूआरएल 'वेब संदर्भ' करते हैं, तो पोर्ट बदल सकता है। जब तक आप प्रोजेक्ट-> गुण विकल्प पृष्ठ में उल्लिखित "विशिष्ट पोर्ट" सेट नहीं करते हैं।

यह ऐसा कुछ है जिसे मैंने अभी तक उपयोग किया है। मैं हमेशा एक विशिष्ट बंदरगाह सेट करता हूं। अब जब कभी-कभी वेबसर्वर दुर्घटनाग्रस्त हो जाता है (मैंने ऐसा किया है), मैं बस पोर्ट नंबर बदलता हूं, और सब ठीक है। मुझे लगता है कि पुनरारंभ करना भी इसे ठीक करेगा।

+0

दर्द, आईआईएस का उपयोग करें। – PositiveGuy

2

निर्मित सर्वर का अर्थ है डेवलपर को यह नहीं पता कि आईआईएस को अपनी साइट का परीक्षण करने के लिए कैसे सेट अप करना है।

आप तर्क दे सकते हैं कि यह एक नुकसान है, और एक विंडोज डेवलपर को कम से कम आईआईएस पता होना चाहिए। या आप तर्क दे सकते हैं कि एक डेवलपर जो sysadmin नहीं है वेब सर्वर के साथ गड़बड़ नहीं होना चाहिए।

+0

भारी असंगतता। आपको आईआईएस पता होना चाहिए ... यह आपके काम के लिए महत्वपूर्ण है। पूर्णतया सहमत। यही कारण है कि हमारे पेशे में ऐसे बेवकूफ डेवलपर्स हैं ... क्योंकि हम असली कोड सीखने के बजाय कैसीनी जैसे ब्लैकबॉक्स बकवास पर भरोसा करते हैं या इस मामले में असली वेब सर्वर (आईआईएस) से संबंधित है जो वेब के लिए .NET चल रहा है। जब आप ऐसा करेंगे तो आईआईएस क्यों कुछ और उपयोग करना चाहेंगे। मेरी इच्छा है कि एमएस कभी भी इस बेवकूफ तरफ कदम "आसान" बकवास के साथ कभी नहीं आएगा जैसा कि वे हमेशा करते हैं ... यह हमें डंबर बनाकर पेशेवरों के रूप में हमें परेशान करता है। – PositiveGuy

0

बिल्ट-इन वेबसर्वर आईआईएस की तुलना में थोड़ा कम मजबूत है, लेकिन कोई सेटअप की आवश्यकता नहीं है, इसलिए यह सिर्फ एक ट्रेडऑफ है।

आप हमेशा अपने आईआईएस सर्वर (यहां तक ​​कि अपने स्थानीय आईआईएस सर्वर) पर अपनी विकास परियोजनाओं को उजागर नहीं करना चाहते हैं, इसलिए अंतर्निर्मित सर्वर इसके लिए अच्छा है।

हालांकि, यदि आपका एप्लिकेशन किसी वेब ऐप के लिए मानक के बाहर संसाधनों तक पहुंचने जा रहा है, तो आप आईआईएस में अक्सर डीबग करना चाहेंगे ताकि आपका ऐप प्रतिबंधित अनुमतियों के साथ चलाए और आप देख सकें कि दर्द बिंदु कहां होंगे ।

5

विजुअल स्टूडियो वेब सर्वर पथ में // के बारे में क्षमा नहीं कर रहा है।

यह एक लिंक की सेवा करने से इंकार कर देगा: http://localhost:52632/main//images/logo.jpg जहां आईआईएस करेगा।

यह बहुत अस्पष्ट है लेकिन इसका मतलब है कि // घटनाओं से छुटकारा पाने के लिए हमारे पास बहुत कुछ तय करना है।

2

कैसिनी क्लासिक एएसपी पृष्ठों का भी समर्थन नहीं करता है। यह विरासत परियोजनाओं के लिए केवल एक मुद्दा है जहां पुराने एएसपी पृष्ठ अभी भी मौजूद हैं (जैसे काम पर हमारे वेब ऐप)।

+0

जो क्लासिक एएसपी की परवाह करता है ... उन्हें अब तक परिवर्तित किया जाना चाहिए। – PositiveGuy

+1

@CoffeeAddict: आप आश्चर्यचकित होंगे। सैन फ्रांसिस्को में आधा कंपनियां 90 के दशक में निर्मित इंफ्रास्ट्रक्चर ऐप्स पर चलती हैं जिन्हें बाद में अपग्रेड नहीं किया गया है। –

3
  • आप दृश्य स्टूडियो (सामान्य परिस्थितियों में) इसका इस्तेमाल करने

  • यह केवल प्रतिक्रिया करता है तो स्थानीय होस्ट करने के लिए चल रहा है की जरूरत आप नहीं कर सकते नेटवर्क

    से अधिक अपनी साइट को देखने के लिए एक दोस्त के लिए लिंक http://simon-laptop:37473/app1 देना
  • बड़ा नुकसान: fiddler काम करना मुश्किल है क्योंकि स्थानीयहोस्ट यातायात प्रॉक्सी के माध्यम से नहीं भेजा जाता है।

संपादित करें:http://ipv4.fiddler:37473 का उपयोग कर का सबसे अच्छा तरीका फ़िडलर इसके साथ काम पाने के लिए है।

+1

आप अपने यूआरएल पर कोलन और बंदरगाह से पहले एक अवधि जोड़ कर स्थानीय ट्रैफिक देखने में फिडलर को ट्रिकर कर सकते हैं .. उदाहरण http://localhost.:1234/MyApp या फिडलर पासथ्रू http: //ipv4.fiddler का उपयोग करना : 1234 –

+1

असल में, आप इसे कमांड लाइन से चला सकते हैं, इसलिए आपको दृश्य स्टूडियो चलाने की आवश्यकता नहीं है। –

1

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

1

कैसिनी को एक हल्का इंतजार परीक्षण वेबसर्वर माना जाता है। विचार यह है कि एक डेवलपर को आईआईएस स्थापित करने और उसके आवेदन की जांच करने के लिए कॉन्फ़िगर करने की आवश्यकता नहीं है। आईआईएस का प्रयोग करें यदि आप इसके साथ परिवार हैं और आपके पास यह सेटअप है और आपका बॉक्स इसे संभाल सकता है। कैसिनी को प्रतिस्थापन नहीं माना जाता है।

+0

आपको बहुत बहुत धन्यवाद। एक जगह नहीं है। – PositiveGuy

0

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

16

सभी पिछले प्रतिक्रियाएं बहुत अच्छी प्रतिक्रिया हैं - यहां कैसिनी के साथ एक गोटो है जिसे आईआईएस को destkop पर आवश्यकता हो सकती है।

कैसिनी डेवलपर के संदर्भ में चलता है, आईआईएस उपयोगकर्ता (आईयूएसआर_, आईडब्ल्यूएएम, या विनएक्सपी x64, w3wp प्रक्रिया में नहीं) के रूप में। यदि आपके पास ऐसी वेबसाइट है जो बाहरी फ़ाइलों तक पहुंच रही है या अस्थायी फ़ाइलों को बना रही है तो यह थोड़ा दर्दनाक हो सकता है। यह तब सबसे स्पष्ट है जब आपका डेवलपर अपने डेस्कटॉप के व्यवस्थापक के रूप में चल रहा है।

जब आप सर्वर आईआईएस में जाते हैं, तो कैसिनी में आपके पास पहुंच के लिए कुछ ऐसा ही काम नहीं करता है। IIS_WPG के साथ सीएसीएलिंग आमतौर पर ठीक करने के लिए होती है, लेकिन यदि आपका डेवलपर इस बारे में सोच नहीं रहा है, तो वे जल्दी से अपने तैनाती से निराश हो जाएंगे।

9

कैसिनी वर्चुअल निर्देशिका

0

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

5

एक और नुकसान जो मैंने चलाया है, कस्टम IPrincipal/IIdentity का उपयोग कर एक फॉर्म प्रमाणीकृत वेबसाइट पर है। कैसिनी चेतावनी (या नोटिस) के बिना AppDomains स्विच करेगा।

इस blog post को और अधिक देखें। इस पर सिरदर्द ने मुझे कैसिनी छोड़ दिया और आईआईएस के साथ चिपक गया।

2

आप वर्चुअल निर्देशिका :(

1

का उपयोग नहीं कर सकते आप विस्टा या विंडोज 7 यूएसी के साथ में आईआईएस का उपयोग करते हैं सक्षम, आप व्यवस्थापक अधिकारों के साथ दृश्य स्टूडियो चलाना चाहिए। यदि आप ऐसा करते हैं, तो आप से एक बूंद खींचें नहीं कर सकते दृश्य स्टूडियो (भले ही आप व्यवस्थापक के रूप में explorer.exe का एक उदाहरण चलाने) के लिए अपने खोल।

इस कारण से मैं सबसे परियोजनाओं के लिए कैसिनी का उपयोग करें।

+1

शायद किसी को एक नया प्रश्न शुरू करना चाहिए "Vista/Win7 पर आईआईएस के बजाय कैसिनी का उपयोग करने के (डी) फायदे क्या हैं?" क्योंकि यह एक गेम परिवर्तक है, यानी एक्सपी पर सबसे अच्छा विकल्प आईआईएस है, लेकिन यह नहीं है कि Win7 –

0

एक और असंतुष्ट लाभ के माध्यम से यह हर अनुरोध भेजता है वह यह है कि gloabal asax फ़ाइल जिसमें छवियों और स्टाइलशीट के लिए सभी अनुरोध शामिल हैं। इसका मतलब है कि यदि आपके पास कोड है जो करता है फाइल नामों वाली चीजें, जैसे कि लुकअप, फिर सहायक फाइलें भी संसाधित हो जाएंगी।

1

FYI करें, Windows XP 64-बिट आईआईएस के साथ आता है 6.

7

लग रहा है एक 3 विकल्प की तरह जल्द ही आ रहा है: IIS Express

1

यह 2 साल पहले शुरू हुआ एक पुराना धागा है। Googling के दौरान मैं बस UtilDev Cassini पर ठोकर खाई। मुझे वादा करता है। कम से कम इसमें एक साथ कई साइटों को चलाने की क्षमता है। यह सुविधा मेरे लिए वास्तव में उपयोगी है, क्योंकि मैं 2 अलग-अलग साइटों पर काम करता हूं और आईआईएस का उपयोग करके लगातार उनके बीच स्विच करना पड़ता हूं।

+1

दोस्त पर पसंद की स्पष्टता सिर्फ आईआईएस का उपयोग करें और आगे बढ़ें। यह जानें। – PositiveGuy

1

यहाँ एक तीसरा रास्ता के लिए एक कारण है: हालांकि UWS Pro शायद करीब है कैसिनी (हालांकि कैसिनी से प्रेरित है और UltiDev कैसिनी कांटा के विक्रेता से है) की तुलना में IIS करने के लिए, इसका मुख्य उद्देश्य ASP.NET के साथ redistributable हो रहा है अनुप्रयोगों। enter image description here

+2

बस आईआईएस का उपयोग करें, और कुछ भी क्यों उपयोग करें। – PositiveGuy

0

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

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