Site icon Embarcadero RAD Studio, Delphi, & C++Builder Blogs

Use Powershell to Install IIS for RAD Server EMS production environment [JAPAN]

RAD Server が提供する機能のうち、中間サーバの機能は IIS または Apache で動作します。このインストールですが、運用環境向けのインストール手順を見ると docwiki には IIS のインストール手順が以下のように掲載されています。

  1. [コントロール パネル|プログラムと機能|Windows の機能の有効化または無効化]を選択します。
    メモ: これには特権モードが必要です。
  2. [Windows の機能]ダイアログ ボックスの[インターネット インフォメーション サービス]ノードを展開し、以下を行います。

    • [Web 管理ツール]の[IIS 管理コンソール]のチェックをオンにします。
    • [World Wide Web サービス]の[アプリケーション開発機能]を展開し、[ISAPI 拡張機能]と[ISAPI フィルタ]のチェックをオンにします。
    • [World Wide Web サービス]の[HTTP 共通機能]を展開し、同様に[既定のドキュメント]、[ディレクトリの参照]、[HTTP エラー]、[静的コンテンツ]のチェックがオンになっているか確認します。
  3. [OK]をクリックして、インストールを開始します。

http://docwiki.embarcadero.com/RADStudio/Seattle/ja/運用環境への_EMS_サーバーまたは_EMS_コンソール_サーバーのインストール


これは大した作業じゃないけど、こういうのをOS標準のGUIで作業するのはあんまり楽しくないです。せめて RAD Studio の IDE でコンポーネントやプロパティを探すときのようにインクリメンタルサーチができるならずいぶん違うんですけどね。あるいは Linux なら yum install や apt-get install とかでサクッと終わらせる作業ですよ。

というわけで、GUIでやらずにCUIでコピー&ペーストでやってしまいましょう。管理者権限でPowerShell を起動して、以下のように実行すればよいのです。なお、この作業は Windows Server 2012R2 で検証したものを掲載しています。

PS C:Windowssystem32> Add-WindowsFeature Web-Server,Web-Mgmt-Console,Web-ISAPI-Ext,Web-ISAPI-Filter,Web-Default-Doc,Web-Dir-Browsing,Web-Http-Errors,Web-Static-Content

Success Restart Needed Exit Code      Feature Result
------- -------------- ---------      --------------
True    No             Success        {アプリケーション開発, HTTP 共通機能, 既定...


PS C:Windowssystem32>

これでインストール完了ですね。インストールは正常に完了し、OSの再起動は不要というステータスになっています。なお、Add-WindowsFeatures は指定する名前を間違えていると以下のようにエラーとなります。だからインストールのコマンドに間違いがあればすぐに分かります

PS C:\Windows\system32> Add-WindowsFeature Web-Server,Web-Mgmt-Console,Web-ISAPI-Ext,Web-ISAPI-Filter,Web-Default-Doc,Web-Dir-Browsing,Web-Http-Errors,Web-Static-Conten
Add-WindowsFeature : ArgumentNotValid: 役割、役割サービス、または機能名が無効です: 'Web-Static-Conten'。名前が見つかりませんでした。
発生場所 行:1 文字:1
+ Add-WindowsFeature Web-Server,Web-Mgmt-Console,Web-ISAPI-Ext,Web-ISAPI-Filter,We ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (Web-Static-Conten:String) [Install-WindowsFeature]、Exception
    + FullyQualifiedErrorId : NameDoesNotExist,Microsoft.Windows.ServerManager.Commands.AddWindowsFeatureCommand

Success Restart Needed Exit Code      Feature Result
------- -------------- ---------      --------------
False   No             InvalidArgs    {}

さて、エラーが出ていなければインストールには問題は無いはずですが、念のためにインストール済みの機能を確認してみましょう

PS C:\Windows\system32> Get-WindowsFeature -Name Web-Server,Web-Mgmt-Console,Web-ISAPI-Ext,Web-ISAPI-Filter,Web-Default-Doc,Web-Dir-Browsing,Web-Http-Errors,Web-Static-Content

Display Name                                            Name                       Install State
------------                                            ----                       -------------
[X] Web サーバー (IIS)                                  Web-Server                     Installed
            [X] HTTP エラー                             Web-Http-Errors                Installed
            [X] ディレクトリの参照                      Web-Dir-Browsing               Installed
            [X] 既定のドキュメント                      Web-Default-Doc                Installed
            [X] 静的なコンテンツ                        Web-Static-Content             Installed
            [X] ISAPI フィルター                        Web-ISAPI-Filter               Installed
            [X] ISAPI 拡張                              Web-ISAPI-Ext                  Installed
        [X] IIS 管理コンソール                          Web-Mgmt-Console               Installed

大丈夫のようですね。

なお、IIS関連の機能のインストール状況を一覧で確認したい場合は、”Get-WindowsFeature -Name Web-*” のように実行します

PS C:Windowssystem32>  Get-WindowsFeature -Name Web-*

Display Name                                            Name                       Install State
------------                                            ----                       -------------
[X] Web サーバー (IIS)                                  Web-Server                     Installed
    [X] Web サーバー                                    Web-WebServer                  Installed
        [X] HTTP 共通機能                               Web-Common-Http                Installed
            [X] HTTP エラー                             Web-Http-Errors                Installed
            [X] ディレクトリの参照                      Web-Dir-Browsing               Installed
            [X] 既定のドキュメント                      Web-Default-Doc                Installed
            [X] 静的なコンテンツ                        Web-Static-Content             Installed
            [ ] HTTP リダイレクト                       Web-Http-Redirect              Available
            [ ] WebDAV 発行                             Web-DAV-Publishing             Available
        [X] セキュリティ                                Web-Security                   Installed
            [X] 要求フィルター                          Web-Filtering                  Installed
            [ ] IIS クライアント証明書マッピング認証    Web-Cert-Auth                  Available
            [ ] IP およびドメインの制限                 Web-IP-Security                Available
            [ ] SSL 証明書の集中サポート                Web-CertProvider               Available
            [ ] URL 承認                                Web-Url-Auth                   Available
            [ ] Windows 認証                            Web-Windows-Auth               Available
            [ ] クライアント証明書マッピング認証        Web-Client-Auth                Available
            [ ] ダイジェスト認証                        Web-Digest-Auth                Available
            [ ] 基本認証                                Web-Basic-Auth                 Available
        [X] パフォーマンス                              Web-Performance                Installed
            [X] 静的なコンテンツの圧縮                  Web-Stat-Compression           Installed
            [ ] 動的なコンテンツの圧縮                  Web-Dyn-Compression            Available
        [X] 状態と診断                                  Web-Health                     Installed
            [X] HTTP ログ                               Web-Http-Logging               Installed
            [ ] ODBC ログ                               Web-ODBC-Logging               Available
            [ ] カスタム ログ                           Web-Custom-Logging             Available
            [ ] トレース                                Web-Http-Tracing               Available
            [ ] ログ ツール                             Web-Log-Libraries              Available
            [ ] 要求の監視                              Web-Request-Monitor            Available
        [X] アプリケーション開発                        Web-App-Dev                    Installed
            [ ] .NET 拡張機能 3.5                       Web-Net-Ext                    Available
            [ ] .NET 拡張機能 4.5                       Web-Net-Ext45                  Available
            [ ] Application Initialization              Web-AppInit                    Available
            [ ] ASP                                     Web-ASP                        Available
            [ ] ASP.NET 3.5                             Web-Asp-Net                    Available
            [ ] ASP.NET 4.5                             Web-Asp-Net45                  Available
            [ ] CGI                                     Web-CGI                        Available
            [X] ISAPI フィルター                        Web-ISAPI-Filter               Installed
            [X] ISAPI 拡張                              Web-ISAPI-Ext                  Installed
            [ ] WebSocket プロトコル                    Web-WebSockets                 Available
            [ ] サーバー側インクルード                  Web-Includes                   Available
    [ ] FTP サーバー                                    Web-Ftp-Server                 Available
        [ ] FTP サービス                                Web-Ftp-Service                Available
        [ ] FTP 拡張                                    Web-Ftp-Ext                    Available
    [X] 管理ツール                                      Web-Mgmt-Tools                 Installed
        [X] IIS 管理コンソール                          Web-Mgmt-Console               Installed
        [ ] IIS 6 管理互換                              Web-Mgmt-Compat                Available
            [ ] IIS 6 メタベース互換                    Web-Metabase                   Available
            [ ] IIS 6 WMI 互換                          Web-WMI                        Available
            [ ] IIS 6 スクリプト ツール                 Web-Lgcy-Scripting             Available
            [ ] IIS 6 管理コンソール                    Web-Lgcy-Mgmt-Console          Available
        [ ] IIS 管理スクリプトおよびツール              Web-Scripting-Tools            Available
        [ ] 管理サービス                                Web-Mgmt-Service               Available
    [ ] Web アプリケーション プロキシ                   Web-Application-Proxy          Available
[ ] IIS ホスト可能な Web コア                           Web-WHC                        Available

PS C:Windowssystem32>
Exit mobile version