古いプロジェクトで使用されていた 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 を作成し、次のように記述します。
- <%@Page Language="C#"%>
- <%=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 つだけです。