7 Stimmen

ASP.Net MVC 2 auf nginx/mono 2.8

Ich versuche, ASP.Net MVC 2 Anwendung auf Linux-Umgebung einrichten. Ich habe Ubuntu 10.10 auf VirtualBox installiert, dann Mono 2.8 aus den Quellen installiert. Danach habe ich nginx installiert und konfiguriert es wie empfohlen aquí . Leider zeigt FastCGI mir Standardfehler 500 Seite:

No Application Found
Unable to find a matching application for request:
Host localhost:80
Port 80
Request Path /Default.aspx
Physical Path /var/www/mvc/Default.aspx

Meine Anwendung befindet sich im Verzeichnis /var/www/mvc. Ich habe versucht, einige Stub Default.aspx-Datei zu erstellen und legen Sie es in Root-Verzeichnis meiner Anwendung, aber es hat nicht helfen, gleichen Fehler aufgetreten. Danke!

17voto

Jean Punkte 171

Ich habe einige Tests mit diesem als auch, mit allen ubuntu10.10 Binärdateien. Von dem, was ich daraus machen kann, entweder nginx scheitert den Hostnamen des Mono-Servers zu übergeben scheitert es über das Fastcgi-Protokoll zu empfangen. Wie auch immer, die Tutorial-Zeile:

 fastcgi-mono-server2 /applications=www.domain1.xyz:/:/var/www/www.domain1.xyz/ /socket=tcp:127.0.0.1:9000

funktioniert nicht. Wenn Sie den Hostnamen entfernen, funktioniert die Sache:

 fastcgi-mono-server2 /applications=/:/var/www/www.domain1.xyz/ /socket=tcp:127.0.0.1:9000

aber dies blockiert natürlich die Verwendung mehrerer virtueller Mono-Hosts.

3voto

yojimbo87 Punkte 62550

Da Sie eine ASP.NET MVC 2 Anwendung betreiben, sollten Sie fastcgi-mono-server4 verwenden.

3voto

Sergey Zhukov Punkte 1262

Das Hinzufügen der folgenden Zeile in /etc/nginx/fastcgi_param löst das Problem für mich. Sie ermöglicht auch die Verwendung mehrerer virtueller Hosts.

fastcgi_param HTTP_HOST $host;

2voto

Tom Clarkson Punkte 15764

Funktioniert Ihre Anwendung mit xsp (xsp4, wenn Sie .net 4.0 verwenden)? Vergewissern Sie sich, dass dies funktioniert, bevor Sie versuchen, die Verbindung zu einem anderen Webserver zu konfigurieren.

Weiß nginx, wo mono zu finden ist? Sie haben höchstwahrscheinlich eine parallele Installation und es wird nicht in den Standardpfaden sein.

Ich verwende Apache, aber vielleicht finden Sie einige der Anleitungen in meinem Blog trotzdem nützlich: http://tqcblog.com/2010/04/02/ubuntu-subversion-teamcity-mono-2-6-and-asp-net-mvc/

2voto

sungiant Punkte 3093

Ich hatte dieses Problem gerade, auch ich hatte das Dokument auf der Mono-Website befolgt:

Ich habe versucht, den fastcgi-mono-server zu starten, wie es vorgeschlagen wurde:

sudo fastcgi-mono-server4 /applications=www.domain1.xyz:/:/var/www/www.domain1.xyz/ /socket=tcp:127.0.0.1:9000 &

Als ich es so machte, hatte ich jedoch das gleiche Problem wie Sie. Ich habe es folgendermaßen geändert:

sudo fastcgi-mono-server4 /applications=/:/var/www/www.domain1.xyz/ /socket=tcp:127.0.0.1:9000 &

Und es funktionierte (ich musste www.domain1.xyz/Home/Index eingeben, um meine MVC-Seite zu sehen, ich habe noch nicht herausgefunden, wie ich die Suche nach www.domain1.xyz/default.aspx stoppen kann XD).

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X