私はASP.net Webアプリケーションをデプロイするためにdeployプロジェクトを使用しています。 deployプロジェクトをビルドすると、すべてのコンパイル済みファイルが再作成されます。コンパイル済みファイルを本番サーバーにコピーする必要はありますか?
プロダクションWebサーバーにFTPする必要はありますか?
小さな変更を行う場合は、すべてのWebサイトを再度コピーする必要がありますか?
私はASP.net Webアプリケーションをデプロイするためにdeployプロジェクトを使用しています。 deployプロジェクトをビルドすると、すべてのコンパイル済みファイルが再作成されます。コンパイル済みファイルを本番サーバーにコピーする必要はありますか?
プロダクションWebサーバーにFTPする必要はありますか?
小さな変更を行う場合は、すべてのWebサイトを再度コピーする必要がありますか?
は、.compiledファイルが運用サーバーにコピーし、それには必要ありませんする必要がありますたびに
をコピーしRick Strahl優れたブログから:
出力マージutilitityから すべてのマークアップとCodeBeside コードを1つのアセンブリに結合できますが、 は、 が にページ要求を関連付けるのに必要なファイル にコンパイルされますアセンブリの中に含まれている特定のクラスです。ただし、ファイル が生成されているため、 は、 ページを追加または削除しない限り、これらのファイルを更新する必要はありません。事実上、この は、多くの場合、 の単一アセンブリを Webにアップデートすることができます。
Source
コンパイル済みのファイルについて特別なことは何もありません。誤ってダブルクリックしても何も起こらないように、最後に.compiled拡張子が付いた実際のファイルです。
コンパイル済みのファイルが表示されている場合は、正式にインストールされると予想されるようにアプリを公開しています。プロダクションにコピーするだけでは不十分です。インストーラプログラムも実行する必要があります。これがすでに展開されていることがわかっているアプリであれば、少し不必要なようです。私自身の研究から
あなたは-r
オプションでaspnet_mergeツールを使用して.compiled
ファイルを取り除くことができます。
メインコードアセンブリ(App_Codeフォルダ内のコード)の.compiledファイルを削除します。アプリケーションにメインコードアセンブリへの明示的な型参照が含まれている場合は、このオプションを使用しないでください。
.compiledファイルはBINフォルダにあります。 "すべてのページとコントロールの出力を1つのアセンブリに結合"オプションを設定しました。 私はそれらをFTPする必要はないと言いますか? –
いいえ、私はあなたがそれらのすべての展開でそれらを見るので、おそらく正しく設定されていないと言います。 –
私は何も間違っているとは思わない。私はWeb配置プロジェクトを使用していて、一時フォルダに展開しています。すべてのコンパイル済みファイルは、ビルドによって生成されます。 –