2009-03-14 21 views

答えて

9

ここには、このタスクを達成するためのさまざまな手法を示すサイトがあります。 Webアプリケーションの展開戦略として利用することができる多くの技術:

Beansoftware How to Deploy ASP.NET Web Application

+2

を公開]をクリックします。 VS2010のオプションについては、http://weblogs.asp.net/scottgu/archive/2010/07/29/vs-2010-web-deployment.aspxを参照してください。 –

8

Altキー+ B + H組み合わせは、(ASP.NET Webサイト/アプリケーションのウィンドウを公開開きます)があります必要な場所にアプリケーションを展開する最も簡単な方法です。

パブリッシュは、アプリケーションのサーバーへのコンパイルとデプロイに使用されます。

6

アップタイム/アベイラビリティの観点から何を達成しようとしているかによって異なります。 publish/xcopy/installerオプションは興味深いですが、これらのオプションが完了するまでに時間がかかるという問題に対処することはすべて怠っています。最初のファイルがディレクトリにコピーされてから最後のファイルがサイトにコピーされるまでの間は、矛盾した状態になります。

ASPXファイルは、binディレクトリにまだ存在しないデータレイヤオブジェクトを参照することがあります。または、binディレクトリに関数のparamsのセットが変更されたDLLがある可能性がありますが、aspxはまだインストールされているので、aspxはまだ古い機能を探しています。つまり、配備はアトミックプロセスではないため、問題が発生する可能性があります。

新しいファイルを新しいディレクトリにインストールし、IISに入り、Webサイトを変更して新しいディレクトリを指定することで、この問題を解決しました。これは変更を原子的なプロセスにし、物事をよりスムーズにします。それは完璧ですか?いいえ。ビューステートの問題やセッションの問題を残すことができます(セッションは保持されますが、新しいコードは古いコードが設定されていないセッションで何かを探すかもし​​れませんが)。

当然のことながら、これらのソリューションのどれも、ウェブサイトをアップグレードする他の非アトミックな部分には対処しません...データベース。この場合も、DBスキーマを変更するプロセスには時間がかかります。最初にコードをアップグレードするのか、データベースをアップグレードするのですか? DB変更は、コード変更(nullをサポートするか、デフォルトを持つ新しい列)を使用するか、コード変更作業をDB変更(列を削除)することができますか?これはケースバイケースの分析であり、これらの解決法のいずれによっても対処されていません。

もちろん、ユーザーをサイトから一定期間蹴ることができれば、人生は楽ですが、 100%の稼働時間を達成しようとすると、それほど単純ではありません。

0

ウェブパブリッシュを目的のターゲットに設定することが実用的でないことがあります。その場合は、引き続きローカルマシンに公開することができるかもしれません(下記参照)。その後、ターゲットにXCOPYを展開します。

    IIS右クリックしてサイトに
  1. と、
  2. は(管理者権限で実行している)に示すように、新しいウェブサイトをセットアップし、Visual Studioで enter image description here
  3. OKをクリックしてウェブサイトを追加するには、ASPを右クリックし、クリックしてください.NET Webプロジェクトで、[公開]を選択します。
  4. [プロファイル]の見出しをクリックし、ドロップダウンから[新しいカスタムプロファイル...]を選択します。
  5. 、「localhost44321」などのプロファイル名を入力してください示すようにプロファイルを設定し、この資料の情報は今少し時代遅れである enter image description here
関連する問題