【プログラミング】ASP.NET 4に移行する

先日、私の運営するコンテンツサイト「なおさん亭::新館」において、「Service Unavailable」と表示されて閲覧不能になってしまった、という記事を書きました。

【プログラミング】Service Unavailable!

このときは、サービスを提供している「ウィンサーバー」に問い合わせて、サービスは無事再開されたのですが、どうせならと「ASP.NET 4」への移行も依頼したのでした(そのときのバージョンは3.5です)。ところが現在のサーバではASP.NETは3.5までしか対応できないということで、ASP.NET 4を使うためにはサーバそのものの移行が必要、ということになったのです。

さっそく、サーバの移行を依頼してみました。すると、すぐに一時サーバが準備できたとの連絡が来ます。速いなぁ、と感服しつつ、さっそくそのサーバにWebブラウザからアクセスしてみますと、デフォルトのページが表示されます。確かに、一時サーバは動作しているようです。

さらに、FTPクライアントにて接続してみます。なお、現サーバも、一時サーバも、同じ認証情報でアクセスできますので、新しい環境へのアクセスは非常に容易です。FTPクライアントで見ることのできるサーバ側のファイルの情報も、本当に初期状態のままです。

一時サーバは、いつでも受け入れ準備完了のようです。とすると、あとはWebアプリケーション自体をASP.NET 4に対応させればOKです。ちなみに、移行のために与えられた時間は一週間です。その間に、一時サーバでの動作を確認し、DNSの設定情報を書き換え、現サーバをクローズさせねばなりません。

アプリケーションをASP.NET 4に対応させるのは非常に簡単で、Visual Web Developerのメニュー[Webサイト]-[開始オプション]で表示されるダイアログボックスで、[ビルド]ページから[対象とするFramework]を変更します。これがASP.NETのバージョンに相当しますので、「.NET Framework 4」を選択し、[OK]ボタンを押します。

Aspdotnet4_01

確認のメッセージが出てきます。先に進みますと、しばらくがちゃがちゃやったあとにソリューションが開き直されます。

Aspdotnet4_02

実際にASP.NET 4対応になったかを、Web.configを見て確認しましょう。compilation要素のtargetFramework属性が4.0になっています。これでOKです。

<compilation debug="true" targetFramework="4.0">
………
</compilation>

このあたりは、ローカルで開発用に使うweb.configと、サーバで公開用に使うweb.configでは事情が違いますので、あくまでもtargetFramework属性のみに着目して下さい。

この修正は、あくまでもweb.configにおけるレベルなので、実際にアプリケーションが動作するかということとは、話が異なります。アプリケーション中で、バージョンに依存する部分があれば、そこを書き換えておかなければなりません。しかし、「新館」にはそのような部分はなく、3.5用に書かれたものがそっくり動作しました。

ASP.NET 4になれば、web.configをデバッグ用と公開用で使い分けられますし、便利な点も多いです。それらについては、おいおいとやっていくことにして、まずはサーバの移行だけを済ませてしまうことにしましょう。

※この記事の公開時点では、新サーバに移行していません。

コメント