2012-10-18 15 views
5

次の手順で並列Mono(2.11.3)をインストールしました。http://www.integratedwebsystems.com/2012/04/install-mono-2-11/このMonoインスタンスでASP.NETサイトを実行します。 VS 2010で "インターネットサイト"テンプレートを使用して空のMVC 4サイトを作成し、Monoを実行しているLinuxボックスに公開しました。Mono 2.11 with nginx or apache

xsp4を実行する前に、これらの手順(http://www.integratedwebsystems.com/2011/06/get-mvc3-razor-running-on-mono/)に従ってxsp4を実行して、環境変数を設定することに成功しました。それは重大な問題なしで機能します(CSSバンドリングのようないくつかの新機能は動作しませんが、後でそれを扱います)。

今、私はapacheや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不正なゲートウェイのエラーが発生し、ログファイルを使用して、「上流からの応答ヘッダを読みながら3上流の予想外のFastCGIレコードを送信した」と言います。 Apacheの+ mod_mono_server4として、私はポストの多くがここでもStackOverflowの上、このトピックにあります

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 

エラー、ない本当の答えを超えて移動していません。しかし、一部のユーザーは、これらのサーバーでMVC4サイトをモノラルで実行することに成功したと報告していますので、構成設定や手順を共有したいと思っていますか?

答えて

0

Nginxの設定ファイルでは、どのポートのポートが待機しているかを知り、fastcgi_passを設定する必要があります。

5

インストールパッケージが間違った場所にファイルを配置しています。 Apacheの場合、modus-mono-server4.exeファイルを/usr/lib/mono/4.0から/usr/lib/mono/4.5に移動し、ファイル内の参照を/ usr/bin/mod-モノサーバー4。

XSPまたはFastCgiを使用している場合は、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のモノ - サーバがmyappの/ fastcgisocket /実行/ソケットの/ varを使用するように設定する必要があります。

このソケットのr/w権限には注意が必要です。

私はまだnginxがfastcgi-mono-serverと並行して処理される複数の要求を送信しないが、これ以外にもうまくいきます。

私はそれが役に立ちそうです。

1

私のMono 3.0.3/MVC 3/Nginxの問題を解決したのはscriptです。必要なファイルをコピーした後、サイトは上手く引き上げました。