Asp.Net プロジェクトの Linux への展開 (Linux + Jexus + Nginx)

古いプロジェクトで使用されていた Asp.Net Web API テクノロジは、Windows システムで開発および展開され、新しいプロジェクトは .Net Core を使用して Ubuntu システムで展開されたため、切り替えを管理するのはやや不便でした。そこで、古いプロジェクトのテスト サーバーを Ubuntu にデプロイして水を試すことにしました。

1. 簡単な紹介

  Asp.Net プロジェクトの Linux への配置を実装するには、Mono を使用する必要があります。Mono は Window の .Net Framework と Linux の .Net ランタイムに相当し、Linux だけでなく Window でも実行できます。

  Jexus は、Linux/unix オペレーティング システム上で動作し、コア機能として ASP.NET をサポートする、.NET 互換環境に基づく高性能 WEB サーバーです。端的に言えば、Windows の IIS に相当します。Jexus には、Professional Edition と General Edition の 2 つのバージョンがあります。Jexus プロフェッショナル バージョンには Mono が付属しており、Jexus バージョンはクライアント サーバーに mono をインストールしなくても正常に動作します. このバージョンは 64 ビット Linux オペレーティング システムのみをサポートします. Jexus の一般バージョンには Mono が含まれていないため、ユーザーは最初に mono と libgdiplus をクライアント マシンにインストールする必要があります。不必要なトラブルを避けるために、展開にはプロフェッショナル バージョンを選択します。

2. インストール

  2.1. ダウンロード:  

  アドレス: http://www.linuxdot.net/down/jexus-5.1.tar.gz

  2.2. 解凍:
  tar -zxvf jexus-5.1.tar.gz

  2.3. インストール:
  解凍後、直接使用できます。アンインストールするときは、このフォルダを直接削除するだけで、完全に緑色のバージョンになります。

  2.4. よく使われるコマンド

  開始: sudo ./jws start

  再起動: sudo ./jws 再起動

  停止: sudo ./jws 停止

  2.5. テスト

  最初に /var/www/default フォルダーを作成し (このフォルダーは、指定された既定の Web サイト パスです)、そのフォルダーに Index.aspx を作成し、次のように記述します。

 
 
  1. <%@Page Language="C#"%>
  2. <%=DateTime.Now.ToString()%>

jexus ディレクトリに移動し、jexus を起動して、Index ページをリクエストします。この Linux システムではポート 80 のみが外部に公開されており、ポート 80 は他のプロジェクトによって占有されているためです。そのため、jexus の siteconf フォルダーで、デフォルト ファイルのポートを 8020 に設定する必要があります。マシンに他の Web サイトを展開していない場合は、ポートを構成する必要はありません。単にローカルホストを culr します。時刻が正常に出力されれば、構成は成功です。

三、ジェクサス構成

  jexus の設定ファイルは jws.conf で、Web サイトの設定ファイルの保存場所、ログ、証明書などを指定します。以下詳細です

    SiteLogDir=log #Web サイト ログと Jexus システム ログの保存場所。必須。jws.exeファイルを基準とした相対パスでも構いません
    SiteConfigDir=siteconf #Webサイト設定ファイルの格納場所は必須項目です。jws.conf ファイルに基づいて、絶対パスまたは相対パスを使用できます。
    Runtime=v4.0.30319 #Jexus ワーク プロセスが実行する .NET バージョンを設定します
    httpd.processes=1 #ワーク プロセスの数。各 6-8 コア CPU は 1 つのプロセスを使用し、最大 4 つのプロセスを設定できます
    httpd.user=www-data #作業プロセスが動作するユーザー ID と対応する権限。デフォルトは root
    です/usr/bin/php-cgi,6 # If you need Jexus to act as the PHP FastCGI server at the same time, this statement is the fast-cgi setting, which is splited to two parts. カンマの前はのパスですphp-cgi ファイル、およびカンマの後には php プロセスの数. CertificateFile=/xxxx/xx.crt #SSL
    証明書のパス (https プロトコルを使用する必要がある場合は記入してください)
    CertificateKeyFile=/xxxx/xx.key # SSL キー ファイル パス (https プロトコルを使用する必要がある場合は入力します)

  注: jws.conf では、SiteConfigDir と SiteLogDir は必須項目です。

   In the website configuration file, this folder has a default file by default, the default port is 80, and the default website resource path is /var/www/default. 上記のテスト例は、使用される最も単純な構成です。

  構成するときは、まず次の 3 つのルールに注意する必要があります:
  1) すべての Web サイト構成ファイルは、jws.conf で指定された Web サイト構成フォルダーに配置する必要があります.このフォルダーには、Web サイト構成ファイル以外のファイルを含めることはできません。ここの任意のファイルは別の Web サイトを表します。
  2) 各 Web サイトには 1 つの構成ファイルしかなく、構成ファイルのファイル名は www.mysite.cn などの Web サイトの名前であり、構成ファイル名はもちろん「mysite」と書くことができます。管理者が覚えやすく、識別しやすいように、他のファイル名として記述することもできますが、特に注意してください。ファイル名にスペースを含めることはできません。
  3) ウェブサイトはいくつでもドメイン名を持つことができます. 異なるウェブサイトが同じドメイン名を持つことはできません. ドメイン名のないウェブサイトは 1 つだけです. ドメイン名のないこのウェブサイトは「デフォルトのウェブサイト」と呼ばれます.既定の Web サイトは最大で 1 つだけです。

 

おすすめ

転載: blog.csdn.net/xsq123/article/details/128690558