8

vNext を少しいじって、サンプル プロジェクトを実行しました。Ubuntu VM を作成し、必要なパッケージをインストールして、k run(コンソール アプリ) とk kestrel(MVC アプリ) ですべて実行しました。

さて、次のステップに進みます。専用の Web サーバーで複数のプロジェクトを実行します。Kestrel は (少なくとも今のところ) vNext に使用される単純な開発 Web サーバーです。本格的な Web サーバーに発展する可能性は低いようです。

したがって、Apacheで実行したいと思います。mod-monoがどこかで出てくると思います。ただし、現時点では、最新の vNext フレームワークはまだサポートされていないと思います。一方で、どこかで KRE が必要になると思います。

近いうちに Apache で ASP.NET プロジェクトを実行するというニュースはありますか? なんとかできた人いますか?

私は、クロス プラットフォームの .NET アプリケーションのアイデアに非常に魅了されています。私の現在の雇用主は、クロスプラットフォームおよびオープンソース ソフトウェアを使用するプロジェクトに多額の投資を行っています。事前にある程度の知識を得て、Windows サーバーではなく Linux Web サーバーに完全に移行する道を切り開きたいと考えています。

ありがとう!

4

1 に答える 1

3

Windows 環境外で vnext を起動して実行しようとしている人がたくさんいるのを見てうれしく思います :)

もちろん、ケストレルについては正しいです。これは、node.js の Hello World チュートリアルで現在動作しているように、単純な Web サーバーになる可能性があります。バックグラウンドで実行することにより、実稼働環境として使用することができますWeb サーバーのバックグラウンドで K Kestrel を実行し、Apache プロキシによってリクエストを kestrel に渡します

*:5004 で開始された kestrel へのリクエストをプロキシする VirtualHost の例

<VirtualHost *:80>
ServerName example.com:80

ProxyRequests On

<Proxy *>
Order deny,allow
Allow from all
</Proxy>

ProxyPreserveHost Off

ProxyPass / http://localhost:5004
ProxyPassReverse / http://localhost:5004

</VirtualHost>

しかし、上記の解決策はお勧めしません。kestrel には、出力を tty の外部に送信できないという問題があり、起動時に起動スクリプトを使用して実行することはできません。したがって、開始した Web サイトは、サーバーがオンラインである限り存続します :)

私がお勧めするのは、Docker を使用することです。これは、Microsoft によってサポートされている ASP.NET の一種のラッパーです。この段階では、それをより有効に活用できます。

詳細はこちら

http://blogs.msdn.com/b/webdev/archive/2015/01/14/running-asp-net-5-applications-in-linux-containers-with-docker.aspx

于 2015-04-09T22:49:18.500 に答える