Web Deploy ツールを利用した IIS の移行方法

こんにちは。 日本マイクロソフト、Microsoft Japan IIS / Azure Bot Service Support Team の鈴木です。   今回は Web Deploy ツールを利用した IIS の移行方法をご案内します。   IIS 7.5 から IIS 10.0 へ、といった IIS の環境を別のマシンへ移行する場合にご利用いただけるツールとして、Web Deploy (Web 配置) ツールがあります。   Web 配置ツール https://technet.microsoft.com/ja-jp/library/dd939114.aspx   移行時にモジュールの依存関係などの確認も可能であり、弊社ではこのツールを利用した移行を推奨しております。     Web Deploy で移行可能な範囲について ================================== Web Deploy を利用した移行により実現可能な範囲は以下の通りです。   a) IIS の構成 b) コンテンツのコピー   一方、アプリケーションの構成により別途対策が必要な部分として以下の要素が考えられます。  …


Bot 作成時に “Authorization_RequestDenied” エラーが出力される

こんにちは。 日本マイクロソフト、 Microsoft Japan IIS / Azure Bot Service Support Team です。   昨年 Azure Bot Service が 祝 GA され、Bot に関するお問い合わせも多くいただくようになりました。 ご利用いただき、誠にありがとうございます。 本 Blog にて色々と情報公開していきたいと思いますのでよろしくお願いいたします。     今回は、Bot 作成時に以下のような “Authorization_RequestDenied” エラーが表示される場合にご確認いただきたいポイントをご紹介します。     このようなエラーが表示されて Bot が作成できない場合、まずは以下のポイントをご確認ください。   1) サブスクリプションの状態 2) AAD (Azure Active Directory) の権限     1) サブスクリプションの状態 ==================== 本エラーはBot Service特有のエラーではなく、Azure 上で WebApp…


MSDTCを動作させるために必要な設定について

こんにちは。 日本マイクロソフト、Microsoft Japan IIS / Azure Bot Service Support Team の中島です。   今回は、IIS とは異なりますが、Web アプリケーションでもよく利用される MS DTC (Distributed Transaction Coordinator) を介した分散トランザクションを実行する際、MSDTC を動作させるために必要な構成や設定について案内します。   「MSDTC の設定をしてみたけど、うまく動かない」「アプリケーションを動かしたら、分散トランザクションが失敗したことを示すエラーが記録された」といったことがありましたら、下記の設定が正しくできているか、まずは確認してみてください。   MSDTC を介した分散トランザクションが正常に動作するには、以下の 5 つが必要になります。 1. MSDTC サービスの起動を確認する 2. MSDTC のセキュリティ設定をする 3. MSDTC が利用するポートを空ける 4. NetBIOS 名での名前解決可否を確認する 5. CID の一意性を確認する     1. MSDTC サービスの起動を確認する ============================== MSDTC は Windows のサービス…


IIS の Server ヘッダーを消去する

こんにちは!IIS サポートの月尾です。 今回は、お問い合わせいただくことの多い IIS の Server ヘッダーを隠ぺいする方法についてご紹介します。 IIS をご利用で、ホストしている Web サーバーや、そのバージョンが判明してしまうとセキュリティ上望ましくないとの診断を受けたり、Server ヘッダーでクライアントに返される情報を隠したいという方は、どうぞ最後までお目通しいただけますと幸いです。   まず、IIS が返す HTTP ヘッダー内の Server ヘッダーには、以下の 2 種類があります。   ———-    1. IIS 自身が返す Server ヘッダー (Server: Microsoft-IIS/<version>)    2. HTTP 通信を管理するドライバである http.sysが返す Server ヘッダー (Server: Microsoft-HTTPAPI/<version>)   通常は、1. の形式の Server ヘッダーが使用されます。 HTTP.sys にてエラーが発生した場合などで IIS にて処理されなかった場合には 2.の形式の応答が使用されます。 ———-   上記それぞれについて、隠ぺいする方法をご紹介します。    …


“X-Forwarded-For” ヘッダーを IISログに出力したい!

こんにちは。 日本マイクロソフト、IIS サポートの鈴木です。 今回は、お問い合わせの多い、HTTP の拡張ヘッダー ” X-forwarded-For ” をログに出力する方法をご紹介します。   ※X-Forwarded-For (XFF) は、HTTPヘッダーフィールドの一つです。 HTTPプロキシサーバー、または、負荷分散装置(ロードバランサ)を経由して、ウェブサーバーに接続するクライアントの送信元IPアドレスを特定する際に使用されます。   イメージはこんな感じです。   ” X-Forwarded-For ” の ログ出力方法 ” X-Forwarded-For ” をログに出力するには、以下の方法があります。 1. Advanced Logging ※IIS 7.0 以降 2. Enhanced Logging ※IIS 8.5 以降 3. ARR Helper ※IIS 7.0 以降 4. サードパーティ製の ISAPI フィルター(F5XForwardedFor)   <<お選びいただく際のポイント>> IISのバージョンによって、お使いいただける機能が異なります。 Windows Server 2012 R2…


Application Initialization 機能有効化時に HTTP Module 内でサーバー変数を取得すると発生する問題について

こんにちは。 日本マイクロソフト、CSS デベロッパー ツールズ AppPlat の神田一行です。 今回は IIS に古くから存在する ISAPI モジュールと IIS 8.0 で標準搭載された Application Initializationを組み合わせて利用した際に発生する可能性があるトラブルについて、お伝えさせていただきます。 Application Initialization について IIS は、既定でサービス開始直後にワーカープロセスを起動しません。ユーザーからのリクエストを受けてからワーカープロセスを起動し、その中で ASP.NET の初期処理などを行っています。結果、最初にリクエストを行うユーザーは、通常時と比べて応答に時間がかかる (初期化が完了するまで待たされる) こととなります。 この初回リクエストにかかるコストを軽減するための機能として Application Initialization が提供されており、自動的にワーカープロセスを起動させる機能と、仮想的な要求を内部的に発行し、該当の初期化処理を事前に終わらせる機能、の組み合わせで実現されています。 症状 IIS 上にホストしたページにアクセスした際、ブラウザーからの応答が無くなる、もしくは、503 Service Unavailable エラーが表示されます。 また、IIS サーバー上のイベントログに以下の様なログが繰り返し記録されます。 条件 本事象は、次の条件を全て満たすことで発生します。 Windows Server 2012 から標準機能として搭載された Application Initialization を役割サービスから有効にする Web サイトやアプリケーションの詳細設定において、”有効化されたプリロード” が True となっている 処理の過程で “UNENCODED_URL” サーバー変数を参照する ISAPI…


IIS7 以降の静的コンテンツの圧縮について

こんにちは。日本マイクロソフト、CSS デベロッパー ツールズ AppPlat の月尾です。 今回は、静的コンテンツの圧縮が行われる条件の一つとして、コンテンツへのアクセス頻度が関連していることについてお知らせいたします。 静的コンテンツの圧縮の設定について 静的コンテンツの圧縮を有効にするためには、以下の設定が必要となります。 1. Web サーバーの役割サービスから、[パフォーマンス] – [静的コンテンツの圧縮] を有効にします。 HTTP 圧縮 <httpCompression> – セットアップhttps://technet.microsoft.com/ja-jp/library/ee431600.aspx#ghi 2. IIS マネージャーで、サーバーを選択した状態で、機能ビューにある [圧縮] から以下の設定を行います。    [静的なコンテンツの圧縮を有効にする] : チェックを入れます   [次の値より大きいファイルのみ圧縮する (バイト)] : 圧縮を行いたいファイルの最小のサイズを設定します   [キャッシュ ディレクトリ : 圧縮を行ったファイルの保存先のディレクトリを設定します 圧縮を構成する (IIS 7)https://technet.microsoft.com/ja-jp/library/cc730629(v=ws.10).aspx 3. 圧縮を行う対象のコンテンツ タイプを追加します。 IIS 7.0 で HTTP 圧縮対象のコンテンツ タイプを追加する方法https://support.microsoft.com/ja-jp/kb/969062 静的な種類 <staticTypes>https://technet.microsoft.com/ja-jp/library/ee431653.aspx 静的コンテンツの圧縮の確認方法について 上記を設定した状態で実際に静的コンテンツにアクセスしてみます。この際、IE の F12 開発者ツールや、Fiddler…


ASP.NET 3.5 までの TextBox コントロールを MultiLine で使用した場合の障害について

こんにちは。日本マイクロソフト、CSS デベロッパーツールズ AppPlat の伊東です。今日はASP.NET 3.5 の障害について紹介させて頂きます。 概要 ASP.NET 3.5 までの TextBox コントロールを MultiLine で使用した場合、Text プロパティ冒頭の改行コードが、ポストバックによって取り除かれます。 詳細 以下のように、.aspx に Button コントロールと TextBox コントロールを配置します。     <form id="form1" runat="server">         <asp:Button ID="Button1" runat="server" Text="Button" />         <asp:TextBox ID="TextBox1" runat="server" TextMode="MultiLine"></asp:TextBox>     </form> 以下のように、Page_Load イベント初回にて、TextBox コントロールの Text プロパティに、冒頭に複数の改行を含めた文字列をセットします。     protected void Page_Load(object sender, EventArgs e)     {         if…


IIS 7.0 (Windows Server 2008) 以降のアーキテクチャについて

こんにちは。日本マイクロソフト、CSS デベロッパー ツールズ DSI の牧です。 Windows 2000 時代の IIS 5.0 は inetinfo.exe というプロセスが一つでほぼすべてを取り仕切っていました。Windows Server 2003 の IIS 6.0 では HTTP 通信部分が http.sys、アプリケーションワーカープロセスは w3wp.exe と役割分担がされました。これによってパフォーマンスやセキュリティが向上しましたが、他方、問題が発生した際にいったいどの部分でエラーとなっているかが、分かりにくくなっている事は否めません。 本トピックでは、IIS 7.0(Windows Server 2008)以降、IIS を構成するコンポーネントを説明し、それらコンポーネントがどの様に処理を行うかを解説したうえで、本題の IIS が行うエラー制御処理についてどこでエラーが起きたらどのように観測されるのか、といった点を簡単に解説します。 IIS を構成するコンポーネントについて まず、IIS のコアコンポーネントをご紹介したいと思います。 HTTP プロトコルスタック (HTTP.sys)HTTP.sys は、端的に言うと HTTP/HTTPS 用の通信ドライバです。HTTP コネクションの管理、HTTP ヘッダー解析、URL/URI/IRI の解析、HTTP リクエストのログ機能、キャッシュ機能、および、SSL 機能等、多くの機能が HTTP.sys に搭載されています。 Windows プロセスアクティブ化サービス (Windows Process Activation Service : WAS)WAS…


[ご注意ください] 12月10日に Windows Update で配信された Visual Studio 2012 対象の更新プログラム KB3002339 をインストールするとシステムのハングアップなどの問題が発生する

※ 本件は、Visual Studio サポート チームのブログの転載となります。2014 年 12 月 10 日に公開され、Windows Update で配信された Visual Studio 2012 対象の KB3002339 の更新プログラムをインストールすると、Windows Update が完了しない、システム再起動時に更新が完了せずシステムがハングアップしてしまうという現象が発生することを確認いたしました。 KB3002339 https://support.microsoft.com/kb/3002339/ 本問題の報告を受け、Windows Update の配信は既に停止いたしましたが、Windows Server Update Services (WSUS) を使用して更新プログラムを配信されているお客様におかれましては、本更新プログラムの配信を停止していただけますようお願い申し上げます。 既に本更新プログラムを適用し、ハングアップなどの現象が発生している環境での復旧方法につきましては、現在調査中です。進展があり次第、Visual Studio チーム記事にて情報公開させていただきます。最新の内容は下記 Visual Studio チームブログをご覧ください。 Visual Studio サポートチームブログ[ご注意ください] 12 月 10 日に Windows Update で配信された Visual Studio 2012 対象の更新プログラム KB3002339 をインストールするとシステムのハングアップなどの問題が発生するhttp://blogs.msdn.com/b/jpvsblog/archive/2014/12/10/12-10-windows-update-visual-studio-2012-kb3002339.aspx お客様には多大なご迷惑をおかけしておりますこと、深くお詫び申し上げます。