CentOS6.3の下にMono3.2とJexus5.4をインストールします

最新のアップデートについては、以下を参照してください: [** Centos 7.0 install Mono 3.4 and Jexus 5.6 **](https://cloud.tencent.com/developer/article/1024906?from=10680)

2012 今年の初めに「[Mono2.10.8とJexus5.0を32ビットと64ビットのCentOS6.0でインストール](http://cloud.tencent.com/developer/article/1024874?from=10680)」という記事を書きました。Mono3.2は2013年7月24日にリリースされました。3.2バージョンには期待される多くの新機能があります。 「[クロスプラットフォーム.NETランタイム環境Mono3.2の新機能](https://cloud.tencent.com/developer/article/1024875?from=10680)」を参照してください。この記事は主にこの記事の更新版です。

CentOSは、RHELに基づくLinuxディストリビューションであり、その目的は、無料および無料のエンタープライズレベルのLinuxディストリビューションを提供することです。 CentOSの名前は「CommunityENTerpriseOperating System」に由来し、その名前から、これはコミュニティが主導し、エンタープライズユーザーを対象とした一連のオペレーティングシステムであることがわかります。

現在、CentOSは、Webサーバーの目的でホスト間で最も広く使用されているLinuxディストリビューションのセットです。統計によると、現在、Linuxサーバーの約30%がCentOSを使用しています。多くの本やウェブサイトでも、Linuxの操作方法を紹介する際の操作インターフェイスとしてCentOSを挙げています。通常、CentOSは、RHELが新しいバージョンを起動した後、短時間の変更とテストを行った後、新しいバージョンを起動します。そのバージョン番号は、CentOS 6の現在の最新バージョンなど、RHELのバージョン番号に従います。 RHELのバージョンはRHEL6です。

Jexus Web Server for Linuxは、.NET互換環境に基づく高性能WEBサーバーであり、Linux / unixオペレーティングシステムで実行され、コア機能としてASP.NETをサポートします。これは、Apache + mod_mono、Nginx + FastCgiプログラム操作の代わりに使用されます。 ASP.NET。 Jexusには、クロスプラットフォームASP.NETサーバーの象徴的な機能だけでなく、カーネルレベルのセキュリティ監視、侵入検出、URL書き換え、ファイルレスルーティングなどの一連の重要な機能と独自の機能もあります。

Mono XspとJexusの違いは何ですか?

  1. 速度: ASP.NET Webページの場合、高圧下でアクセスするとJexusの方が高速です。静的ファイルの場合、JexusはXSPよりもはるかに高速であり、要件とディスクへの影響はN分の1です。
  2. 機能面: XSPは単調な機能を備えたASP.NETテスト作業に基づいて開発され、Jexusは包括的な機能を備えた実稼働環境で使用される実際のWEBサービスとして開発されています。したがって、xspとJexusは機能的に同等です。
  3. 安定性の観点から: Jexusは優れた障害耐性と自動エラー修正機能を備えており、長時間中断することなく実行できますが、XSPは自動エラー修正メカニズムのない単一プロセスプログラムであり、中断のない動作を維持できません。
  4. セキュリティ: Jexusにはキー侵入検出機能があり、XSPにはセキュリティ検出機能がなく、比較はありません。
  5. マルチサイトのサポート: XSPは1つのサイトをサポートし、Jexusは任意の数のサイトをサポートします。

Jexus forlinuxには次の機能があります。

  1. 複数のオペレーティングシステムのサポート:Jexusは元々「クロスプラットフォームASP.NET WEBサーバー」として設計されました。IISはすでにWindowsシステム上のASP.NETの優れたプラットフォームであるため、現在のJexusはLinuxやFreeBSDなどをサポートしています。 Windows以外のシステムが主な設計目標です。このため、Jexusは、Linux / FreeBSDなどのプラットフォームでのASP.NET構築の観点から非常に重要です。
  2. 高性能:「高性能」はJexusの重要な設計目標です。 JexusはMono環境に基づいて実行されますが、JexusはMonoの.NETコンポーネントで完全に構成されているわけではありません。主要なパフォーマンス関連のコードについて、JexusはLinux / Unix自体の多数の優れた機能を巧みに採用し、コードレイヤーからJexusのパフォーマンス上の利点を確保しています。 。
    同時に、Jexusのフレームワーク機能は、高性能の基本的な保証も提供します。 JexusはXSPとは異なります。純粋なHTMLもASP.NETで処理する必要があります。ApacheやNginxなどのサーバーとは異なり、プラグインを介して間接的にASP.NETをサポートする必要があります。JexusはHMTL静的ファイル処理モジュールとASP.NETを使用します。処理モジュール、静的ファイルキャッシュメカニズム、epoll / pollデータ送信メカニズムなどは、アーキテクチャ自体から始めて高度に統合されており、WEBサーバーの処理能力と送信速度を最大化します。
  3. セキュリティ:Jexusカーネルにはセキュリティ監視メカニズムが含まれており、ほとんどの悪意のあるアクセスはWebサイトに入る前にJexusによって直接禁止されます。これは他のWEBサーバーとは異なるJexusのもう1つの主要な機能です。したがって、Jexusはセキュリティ要件のあるユーザーに特に適しています。高等企業のウェブサイトまたは政府のウェブサイトの使用。
  4. 安定性:操作メカニズムに関して、Jexusシステムには、ワークプロセスの実行ステータスを具体的に検出する管理ユニットがあります。プロセス出口またはASP.NET Webサイトアプリケーションドメイン出口は、管理ユニットによって検出され、再起動されます。これにより、Jexusは7 * 24時間中断することなく動作できます。プログラム自体に関しては、Jexusプログラムコードは簡潔でバグが少ないように努めています。同時に、Jexusの各バージョンは、正式にリリースされる前に厳格なストレステストを受ける必要があります。安定性の要素は、公式リリースのほぼ前に完全に排除されています。
  5. 強力な機能:Jexusは、URLの書き換え、マルチターゲットサーバーの逆プロキシ、PHP、GZIP圧縮送信をサポートし、さまざまなポート、さまざまな仮想パス、さまざまなドメイン名を使用して、任意の数のWebサイトをセットアップできます。 Jexusは完全で強力なWEBサーバーです。
  6. インストール、構成、操作は非常に簡単で、サービスはコミュニティベースであり、さまざまな問題に迅速に対処でき、優れたフォローアップサービスサポート機能があります。

この記事は、WindowsAzureクラウドプラットフォームでのCentOS6.3 + Mono 3.2 + Jexus5.4の簡単なインストールチュートリアルです。

1.システムを更新し、コンパイル環境をインストールして、Monoソースコードのコンパイルの準備をします。 Mono 3.2のソースコードのコンパイルには、システムにMono 2.4以降の環境が必要であるため、「[32ビットおよび64ビットのCentOS6.0でMono2.10.8およびJexus5.0をインストールする](http://cloud.tencent.com/developer/article/1024874?from=10680)」の記事に従ってコンパイルおよびインストールします。 8環境、以下に簡単にリストします。

1、 更新システム

yum –y update

2、 モノソースコードのインストールに必要なライブラリをインストールする

yum -y install gcc gcc-c++ bison pkgconfig glib2-devel gettext make libpng-devel libjpeg-devel libtiff-devel libexif-devel giflib-devel libX11-devel freetype-devel fontconfig-devel  cairo-devel

yumを実行してシステムを更新すると、次のエラーが発生しました。

Error: Package: glibc-headers-2.12-1.80.el6_3.5.x86_64 (updates)

Requires: kernel-headers >= 2.2.1

You could try using --skip-broken to work around the problem

** Found 1 pre-existing rpmdb problem(s), 'yum check' output follows:    kernel-2.6.32-220.13.1.el6.x86_64 has missing requires of kernel-firmware >= ('0 ', '2.6.32', '220.13.1.el6')

解決策:ファイルvi /etc/yum.confを変更し、exclude = kernel *の前にコメントを追加します。このパラメーターは、カーネルの開始時にソフトウェアのインストールまたは更新を除外することを意味し、gccをインストールするにはカーネル関連のソフトウェアglibc-に依存する必要があります。ヘッダー-2.12-1.80.el6_3.5.x86_64。

3、 Monoに必要なGDI +互換APIライブラリLibgdiplusをインストールします

cd /usr/local/src/

wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.tar.bz2

tar -jxvf libgdiplus-2.10.tar.bz2

cd libgdiplus-2.10

. /configure --prefix=/usr

make

make install

4.1、 ソースからMonoをインストールする

cd /usr/local/src/
wget http://download.mono-project.com/sources/mono/mono-3.2.1.tar.bz2
tar -jxvf mono-3.2.1.tar.bz2
. /configure --prefix=/usr
make
make install

mono -Vと入力します。monoバージョン情報がある場合、インストールは成功しています。

4.2、 Gitインストールモノ

cd /usr/local/src/
wget http://download.mono-project.com/sources/mono/mono-2.10.8.tar.bz2
tar -jxvf mono-2.10.8.tar.bz2
cd mono-2.10.8./configure --prefix=/usr
make
make install

mono -Vと入力します。monoバージョン情報がある場合、インストールは成功しています。

CentOSの64ビットバージョンの場合、後でJexus 5をインストールした後、起動時に次のエラーが発生します。

Sender: jws.exe, Sender TypeName: AppDomain    
Exception Source: jws, TargetSite Name: A     
Message is:     
An exception was thrown by the type initializer for Mono.Unix.Native.Stdlib     
StackTrace is:     
 at A.G.A(System.String[] A)[0x00000]in<filename unknown>:0  
IsTerminating: True

コマンドldconfigを実行することをお勧めします。monoをインストールした後、すべてのldconfigを実行することをお勧めします。 (ldconfigコマンドの目的は、主に、デフォルトの検索ディレクトリ(/ libおよび/ usr / lib)および動的ライブラリ構成ファイル/etc/ld.so.confにリストされているディレクトリで共有動的リンクライブラリを検索することです(形式は上記のlib * .so *)で、ダイナミックローダー(ld.so)に必要な接続ファイルとキャッシュファイルを作成します。キャッシュファイルのデフォルトは/etc/ld.so.cacheで、このファイルが保存されます。動的リンクライブラリ名の適切な順序リスト。)

もう1つのポイントも非常に重要です。Monoをコンパイルするには、インストールを/ usr(./ configure --prefix = / usr)に指定します。システムがまったく理解できないフォルダーにインストールすると、ldconfigだけでは機能しません。 ldconfigの前に、/ etc /ld.so.confファイルまたは/etc/ld.so.conf.dにパスを追加する必要があります。

2.ソースコードコンパイルmonoが最新の3.2バージョンにアップグレードされます。Gitを使用してここにインストールしました。Monoのメイントランクからプルされたコードは、バージョン3.3にコンパイルされます。

インストールする前に、monoに必要な依存パッケージをインストールします。

yum –y install build-essential automake autoconf libtool bison libglib2.0-dev libfreetype6-dev libfontconfig-dev gettext libgif-dev libtiff4-dev libpng12-dev libexif-dev libx11-dev libxft-dev libjpeg-dev

git clone git://github.com/mono/mono.git
. /autogen.sh --prefix = / usr [ターゲットフォルダに注意してください。必ず同じ場所を指定してください。-prefix= / usrパラメータを使用することを強くお勧めします]
make

コンパイル後、mono 2.10.8がインストールされているソースフォルダに入り、管理者として「makeuninstall」を実行します。

cd /usr/local/src/mono-2.10.8

sudo make uninstall

次に、mono-3.2.0ディレクトリに入ります

sudo make install

mono -Vコマンドを実行すると、インストールが成功したことを示す次の結果が表示されます。

  1. Jexus 5.4のインストール:バージョン5.3.1から、Jexusのインストールプロセスが簡素化されました。2つの新しいスクリプトが組み込まれています。元の「インストール」と「アップグレード」に対応する「インストール」と「アップグレード」です。 Jexusのインストールプロセスを自動化します。 jexus自体のインストールとアップグレードの方法はこれ以上変更されていないため、5.3.1より前のバージョンの使用に慣れているユーザーは、以前のインストール方法を引き続き使用できます。
wget http://www.linuxdot.net/down/jexus-5.4.tar.gz 
tar -zvxf jexus-5.4.tar.gz
cd jexus-5.4   
sudo ./install  

インストールが完了しました〜! ! !インストールスクリプトを実行すると、デフォルトでjexusが/ usr / jexus /にインストールされます。別のディレクトリにインストールする場合は、スクリプトの実行時にディレクトリパラメータを追加できます(sudu install / usr / local / jexus /など)。アップグレードの場合は、アップグレードスクリプトを実行します。

jexusを起動して、正常かどうかを確認します

cd /usr/jexus

sudo ./jws start

Jexusが正常に開始されたというログを確認するには、ブラウザからも確認できます:[http://mono.cloudapp.net/info](http://mono.cloudapp.net/info)

  1. Webサイトをテストします。ここに、Mono互換の小さなローチのコードバージョンを配置します。ここから入手できます[https://github.com/geffzhang/LoachsMono](https://github.com/geffzhang/LoachsMono)

VSでコンパイルした後、Winscpを介してサーバーにアップロードします。詳細については、「[WindowsおよびLinuxでのファイル転送にWinSCPソフトウェアを使用する](https://cloud.tencent.com/developer/article/1024891?from=10680)」を参照してください。

[http://mono.cloudapp.net/](http://mono.cloudapp.net/)にアクセスして、成功を確認してください。

最新のアップデートについては、以下を参照してください: [** Centos 7.0 install Mono 3.4 and Jexus 5.6 **](https://cloud.tencent.com/developer/article/1024906?from=10680)

Recommended Posts

CentOS6.3の下にMono3.2とJexus5.4をインストールします
32ビットおよび64ビットのCentOS6.0でMono2.10.8およびJexus5.0をインストールします
CentOS7はMonoとMonoDevelopをインストールします
CentOS5.9でkeepalivedをインストールして構成します
Centos5.2でLAMPをコンパイルしてインストールします
Python3をインストールし、CentOS8でansible
CentOS6.8でdockerをインストールして使用する
CentOS7の下にPython3とPyをインストールします
centos7をインストールして接続します
CentOS7の下にmysql5.7をインストールします
Centos7の下にActiveMQをインストールします
CentOS7の下にPostgreSQL12をインストールします
VMwareにCentOSをインストールする
Centos7にmysqlをインストールします
Centos7の下にJenkinsをインストールします
MariaDBCentos7の下にMariaDBをインストールします
CentOS6.5の下にmysql5.1をインストールします
CentOSの下でyumを介してsvnと構成をインストールします
centos7はpython3とipythonをインストールします
Linuxを理解し、CentOSをインストールする
CentOs7.3はNginx1.9.9をコンパイルしてインストールします
CentOS6.5はJava8とTomcat8をインストールします
CentosはGitをコンパイルしてインストールします
CentOS6.9でOracle11gR2データベースをインストールします
LinuxにMySQLをインストールする(CentOS 7)
CentOS7はpython3とpip3をインストールします
CentOS6の下にJavaJDK8をインストールします
CentOS6.5はJava8とTomcat8をインストールします
CentOS6はJira7をインストールしてクラックします
CentOS6.5はJava8とTomcat8をインストールします
Centos7はntp-4.2.8p11をコンパイルしてインストールします
CentOS6.9はpythonをコンパイルしてインストールします
CentOS6のインストールとコンフルエンスのクラック
CentOS6はpython3をコンパイルしてインストールします
CentOS7の下にMongoDBデータベースをインストールします
CentOS6はJira7をインストールしてクラックします
linuxインストールmongodbでのCentOS6.8
CentOS7の下にMesosチュートリアルをインストールします
LinuxcentosでLnmpシェルスクリプトをコンパイルしてインストールします
Centos7インストールjdkおよびパッケージサービスサービス
CentOS7yumはmysqlをインストールして起動します
ubuntu / debianの下にdigをインストールして使用します
CentOSYumはMySQL5.6をコンパイルしてインストールします
CentOS8インストールGitと基本構成
CentOSでNginxとuを使用する
CentOS7でOpenSSLとOpenSSHをアップグレードする
CentOS6.xはNginxをコンパイルしてインストールします
CentOS7はL(A | N)MP環境をコンパイルしてインストールします
CentOS7.3はiptablesをインストールして詳細に使用します
CentOSはPython3とpip3をすばやくインストールします
CentOS7yumはmysqlをインストールして起動します
UbuntuにGerritをインストールしてデプロイする
CentOS8-NFSサービスをインストールして構成する
CentOSの下にハーバーミラーウェアハウスをインストールします
Ubuntu16.04にnodejsとnpmをインストールします
Centos7とcentos8はmysql5.65.78.0をインストールするのでとても簡単です
Centos7はopenJdkをアンインストールし、JDK1.8をインストールします
CentOSでのJava-JDKのインストールと構成
Centos8の下に最新のOpenCV4.3をインストールします
1.5Centos7をインストールする
CentOS7はSQLServerをインストールして使用します