次の方法で共有


ASP.NET で .NET Framework 1.0 と 1.1 を並行して実行する

このホワイトペーパーでは、マシンに .NET 1.0 と .NET 1.1 の両方をインストールし、ASP.NET Web アプリケーションをいずれかのバージョンのフレームワークで実行できるようにする方法について説明します。

ASP.NET 1.0 および ASP.NET 1.1 に適用されます。

ASP.NET では、複数のアプリケーションが同じコンピューターにインストールされながら、異なるバージョンの .NET Framework を使用する場合、アプリケーションは side-by-side 実行されていると言われます。 次のトピックでは、ASP.NET アプリケーションを side-by-side 実行用に構成する方法について説明し、以下を行うための詳細な手順を提供します。

従来、コンピューター上でコンポーネントやアプリケーションが更新される際には、古いバージョンは削除され、新しいバージョンに置き換えられます。 新しいバージョンが以前のバージョンと互換性を持たない場合は、これによって通常、そのコンポーネントまたはアプリケーションを使用する他のアプリケーションは動作しなくなります。 .NET Framework には、複数のバージョンのアセンブリまたはアプリケーションを同じコンピューター上に同時にインストールすることを可能にする side-by-side 実行のサポートが用意されています。 複数のバージョンを同時にインストールできるため、マネージド アプリケーションは、別のバージョンを使用するアプリケーションに影響を与えることなく、どのバージョンを使用するかを選択できます。

既定では、.NET Framework バージョン 1.1 のインストール中に、既存の ASP.NET アプリケーションはすべて最新バージョンの .NET Framework を使用するように自動的に再構成されます。 ASP.NET アプリケーションが既定で .NET Framework 1.1 に設定されることを防ぎたい場合は、こちらをクリックしてインストール中にこれを防ぐ方法を確認してください。

Web サーバーを .NET Framework 1.1 に更新し、1 つ以上の Web アプリケーションに .NET Framework 1.0 を実行させたい場合は、インターネット インフォメーション サービス (IIS) スクリプト マップを更新する必要があります。 スクリプト マッピングは、特定の Web アプリケーションの .aspx ファイル拡張子を .NET Framework の 1 つのバージョンにマップするメカニズムです。 Web アプリケーションを特定のバージョンの .NET Framework にマップする方法を確認するにはこちらをクリックしてください。

インターネット インフォメーション サービスまたは ASP.NET IIS 登録ツール (Aspnet_regiis.exe) を使用すると、どの .NET Framework バージョンが特定の Web アプリケーションを実行しているかを確認できます。 Web サイトが使用している .NET Framework のバージョンを見つける方法を確認するには、こちらをクリックしてください。

.NET Framework 1.1 に移行する際の重要な考慮事項の 1 つは、.NET Framework の各バージョンはそれ独自の Machine.config ファイルを使用することです。 その結果、Web 管理者が Machine.config ファイルに変更を加えた場合、それらの変更を .NET Framework 1.1 の Machine.config ファイルに移行する必要があります。

インストール中の Web アプリケーションの .NET Framework 1.0 へのマッピングの維持

既定では、既存の ASP.NET アプリケーションはすべて、より新しいバージョンの .NET Framework を使用するようにインストール中に自動的に再構成されます。 より新しいバージョンの .NET Framework を使用することで、アプリケーションはその新しいリリースに含まれる機能強化と新機能を最大限に活用できます。 同時に、どのアプリケーションが更新されるかをきめ細かく制御する必要がある Web 管理者は、.NET Framework のインストール中に、すべての既存の ASP.NET アプリケーションの自動再マッピングを防ぐことができます。

ASP.NET アプリケーション全体のより新しいバージョンの .NET Framework への自動再マッピングを防ぐために、Web 管理者は Dotnetfx.exe セットアップ プログラムで /noaspupgrade コマンドライン オプションを使用できます。

より新しいバージョンへの ASP.NET アプリケーションの全体的な再マッピングを防ぐには

  1. [スタート] メニューに移動します。

  2. [実行] をクリックします。

  3. cmd」と入力します。

  4. OK をクリックします。

    Screenshot that shows to prevent total remapping of ASP.NET application to newer version, go to 1. Start, 2. Click on Run, 3. Type

  5. コマンド プロンプトから、次の行を入力して .NET Framework のインストールを開始します: Dotnetfx.exe /c:"install /noaspupgrade?

    Screenshot that shows from the command prompt, type the following line to start the installation of the .NET Framework: Dotnetfx.exe /c:

  6. Microsoft .NET Framework 1.1 セットアップで [はい] をクリックします。 これにより、.NET Framework 1.1 のセットアップ プロセスが開始されます。

    Screenshot that shows Click Yes in the Microsoft .NET Framework 1.1 Setup. This will start the setup process of the .NET Framework 1.1.

Web アプリケーションを特定のバージョンの .NET Framework にマップする

.NET Framework の各バージョンには、各バージョンの ASP.NET IIS 登録ツール (Aspnet_regiis.exe) が含まれています。 このツールを使用すると、管理者は Web アプリケーションが特定のバージョンの .NET Framework で実行されるように指定できます。 これは、Web アプリケーションを .NET Framework の 1 つのバージョンにマップする際に参照されます。 管理者は、Web アプリケーションに関連付けられる .NET Framework のバージョンに対応する Aspnet_regiis.exe を選択する必要があります。 たとえば、Web サイトが .NET Framework 1.1 を使用することを指定したい管理者は、.NET Framework 1.1 に付属する Aspnet_regiis.exe を使用する必要があります。

バージョン 1.0 用の Aspnet_regiis.exe の場所:

  • C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705\aspnet_regiis

バージョン 1.1 用の Aspnet_regiis.exe の場所:

  • C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\aspnet_regiis

Aspnet_regiis.exe には、Web アプリケーションをスクリプト マップするための以下の 2 つのオプションが用意されています。

  • -s は、スクリプト マップを該当パスとその子ディレクトリに設定します。
  • -sn は、スクリプト マップを該当パスのみに設定します。

このパスは、W3SVC/ROOT/{WebSiteNumber}/{Application_Name} の形式で定義される Web アプリケーションの IIS メタデータ パスを定義します。 たとえば、既定の Web サイトの下にある Portal という Web アプリケーションの場合、メタベース パスは W3SVC/1/ROOT/Portal となります。

Screenshot that shows a Web application called Portal located under the default Web site, and the metabase path is W 3 S V C slash 1 slash ROOT slash Portal.

注: メタベース エディターというツールを使用して、メタベース パスを取得することもできます。 このツールは、Microsoft サポート サイトの https://support.microsoft.com/default.a s p x ?scid=kb;en-us;232068 からダウンロードできます。

  • Portal の IIS スクリプト マップとそのサブアプリケーションを更新するには、Aspnet_regiis.exe -s W3SVC/1/ROOT/Portal を実行します。

    Screenshot that shows to run Aspnet_regiis.exe -s W 3 S V C slash 1 slash ROOT slash Portal to update the portal I I S script map and its subapplication.

  • Portal のサブディレクトリ内のアプリケーションに影響を与えることなく、Portal の IIS スクリプト マップを更新するには、Aspnet_regiis.exe -sn W3SVC/1/ROOT/Portal を実行します。

    Screenshot that shows to Run Aspnet_regiis.exe -sn W 3 S V C slash 1 slash ROOT slash Portal to update the portal I I S script map, without affecting applications in the portal's subdirectories.

Web アプリケーションが使用している .NET Framework のバージョンを見つける

管理者は、インターネット サービス マネージャーを使用して、どのバージョンの .NET Framework が Web サイトを実行しているかを確認できます。 オペレーティング システムのバージョンが異なると、インターネット サービス マネージャーの起動方法が異なります。 サービス マネージャーを起動するには、以下の手順に従います。

インターネット サービス マネージャーを起動するには

  1. [スタート] メニューに移動します。

  2. [実行] をクリックします。

  3. inetmgr」と入力します。

    Screenshot that shows to start Internet Service Manager 1. Go to Start, 2. Click on run, and 3. Type inetmgr. Then click OK.

  4. インターネット サービス マネージャーから、該当する .NET Framework のバージョンを知りたい Web アプリケーションを選択します。

    Screenshot that shows from the Internet Service Manager, select the Web application whose version of the .NET Framework you want to know. Here, Portal is selected.

  5. Web アプリケーションを右クリックし、[プロパティ] をクリックします。

    Screenshot that shows to right-click on the Web application, and click on Properties.

  6. [プロパティ] ウィンドウで、[構成] を選択します。

    Screenshot that shows from the Property window, select Configuration.

  7. アプリケーション マッピング テーブルから、[.aspx] を選択し、[編集] をクリックします。

    Screenshot that shows from the application mapping table, select .a s p x, and click Edit.

  8. [実行可能ファイル] テキスト ボックスで、スクロールを行いバージョン ディレクトリを確認します。 バージョン ディレクトリが v.1.1.4322 である場合、アプリケーションは .NET Framework 1.1 にマップされます。 逆に、バージョン ディレクトリが v1.0.3705 である場合、アプリケーションは .NET Framework 1.0 にマップされます。

    Screenshot that shows the Executable text box and the version directory v . 1 .1 . 4 3 2 2 from scrolling, which is mapped to a .NET Framework 1.1.