2012-10-18 6 views
5

मैंने इन निर्देशों के बाद समांतर मोनो (2.11.3) स्थापित किया है: http://www.integratedwebsystems.com/2012/04/install-mono-2-11/ अब मैं इस मोनो इंस्टेंस पर अपनी एएसपी.NET साइट को चलाने के लिए चाहता हूं। मैंने वीएस 2010 में "इंटरनेट साइट" टेम्पलेट का उपयोग करके एक खाली एमवीसी 4 साइट बनाई है और इसे मोनो चलाने वाले लिनक्स बॉक्स में प्रकाशित किया है।मोनो 2.11 nginx या apache

मैं xsp4 चलाने से पहले पर्यावरण चर सेट अप करने के लिए इन निर्देशों (http://www.integratedwebsystems.com/2011/06/get-mvc3-razor-running-on-mono/) के बाद xsp4 के माध्यम से इसे चलाने में सफल रहा हूं। यह बिना किसी बड़ी समस्या के काम करता है (मुझे लगता है कि सीएसएस बंडल जैसी कुछ नई विशेषताएं काम नहीं करती हैं, लेकिन मैं बाद में इसका सामना करूंगा)।

अब, मैं अपाचे या nginx जैसे उत्पादन सर्वर का उपयोग करना चाहता हूं। हालांकि, यह लगभग असंभव प्रतीत होता है, और ऐसा लगता है कि मैं इस समस्या के साथ अकेला नहीं हूं। उदाहरण के लिए, इस सरल nginx विन्यास

server 
{ 
    listen 80; 
    server_name mvctest.mono; 

    access_log /var/www/mvctest/log/access.log; 
    error_log /var/www/mvctest/log/error.log debug; 

    location/
    { 
      root /var/www/mvctest/; 
      index index.html index.htm default.aspx Default.aspx; 
      fastcgi_index /Home; 
      fastcgi_pass 127.0.0.1:9000; 
      include /etc/nginx/fastcgi_params; 
    } 
} 

परिणाम 502 खराब गेटवे त्रुटि में उपयोग कर, और लॉग फ़ाइल कहते हैं, "नदी के ऊपर भेजा अप्रत्याशित FastCGI रिकॉर्ड: 3 नदी के ऊपर से प्रतिक्रिया हेडर को पढ़ने के दौरान"। अपाचे + mod_mono_server4 का सवाल है, मैं त्रुटि

Exception caught during reading the configuration file: 
System.MissingMethodException: Method not found:  'System.Configuration.IConfigurationSectionHandler.Create'. 
at  System.Configuration.ClientConfigurationSystem.System.Configuration.Internal.IInternalConfigSystem.GetSection (System.String configKey) [0x00000] in <filename unknown>:0 
at System.Configuration.ConfigurationManager.GetSection (System.String sectionName) [0x00000] in <filename unknown>:0 
at System.Configuration.ConfigurationManager.get_AppSettings() [0x00000] in <filename unknown>:0 
at Mono.WebServer.Apache.Server.get_AppSettings() [0x00001] in /opt/mono-2.11/build/xsp-2.10.2/src/Mono.WebServer.Apache/main.cs:208 
at Mono.WebServer.Apache.Server+ApplicationSettings..ctor() [0x0002a] in /opt/mono-2.11/build/xsp-2.10.2/src/Mono.WebServer.Apache/main.cs:63 

इस विषय पर पदों की एक बहुत कुछ कर रहे हैं, Stackoverflow पर भी यहाँ है, लेकिन कोई वास्तविक जवाब अतीत स्थानांतरित नहीं किया है। हालांकि, कुछ उपयोगकर्ता रिपोर्ट करते हैं कि वे इन सर्वरों के साथ मोनो पर एमवीसी 4 साइटों को चलाने में सफल रहे, इसलिए मैं सोच रहा था कि कोई भी अपनी कॉन्फ़िगरेशन सेटिंग्स या चरण-दर-चरण निर्देशों को साझा करना चाहेगा?

उत्तर

0

आपको यह जानने की जरूरत है कि कौन सा पोर्ट मोनो सर्वर सुन रहा है, और अपनी nginx कॉन्फ़िगरेशन फ़ाइल में fastcgi_pass सेट करें।

5

इंस्टॉल पैकेज कुछ फ़ाइलों को गलत जगह पर रख रहा है। अपाचे के लिए, आपको फ़ाइल mod-mono-server4.exe को /usr/lib/mono/4.0 से /usr/lib/mono/4.5 पर ले जाना होगा और फ़ाइल/usr/bin/mod- मोनो server4।

यदि आप एक्सएसपी या फास्टसीजी का उपयोग कर रहे थे, तो xsp4.exe और fastcgi-mono-server4.exe और/usr/bin में उनके संबंधित संदर्भों के लिए एक ही उपचार की आवश्यकता होगी।

0

(मुझे खेद है कि मैं इस मोनो पथ नीचे पीछा शुरू कर रहा हूँ ...) मैं इस मामले में एक विशेषज्ञ नहीं हूँ, लेकिन निम्नलिखित nginx विन्यास एक अलग विन्यास में मेरे लिए काम करता (nginx + मोनो 2.10 + F # + websharper):

server { 
    listen 80; 
    access_log /var/log/myapp/access.log; 

    location/{ 
      root /opt/myapp; 
      index index.html index.htm default.aspx Default.aspx; 
      fastcgi_pass unix:/var/run/myapp/fastcgisocket; 
      include /etc/nginx/fastcgi_params; 
    } 
} 
बेशक

, FastCGI-मोनो सर्वर सॉकेट/var/चलाने/MyApp/fastcgisocket उपयोग करने के लिए विन्यस्त किया जा करना होगा।

ध्यान दें कि आपको इस सॉकेट के लिए आर/डब्ल्यू अनुमतियों से सावधान रहना होगा।

मुझे अभी भी समस्या है कि nginx fastcgi-mono-server के समानांतर में संभालने के लिए कई अनुरोध नहीं भेजता है लेकिन इसके अलावा यह अच्छा काम करता है।

मुझे उम्मीद है कि यह मदद करता है।

1

यहां एक script है जो मेरे मोनो 3.0.3/एमवीसी 3/Nginx मुद्दों को हल करता है। आवश्यक फाइलों की प्रतिलिपि बनाने के बाद, साइट ठीक हो गई।