Windows環境にApacheを導入する方法

最終更新:2024年11月29日

弊社では、以下手順にて動作検証をおこなっておりますが、Apacheの動作を保証するものではございませんので、 参考情報としてご覧ください。アプリケーションの詳細については付属のドキュメントや関連書籍等でご確認ください。

レジストリは、アプリケーションの設定などを管理する大変重要な部分です。「手順4」で誤った設定をすると、システムに重大な支障をきたす恐れがあるので、設定時には十分ご注意ください。 万一不具合が生じました場合も弊社では責任を負いかねますことをご了承ください。

Apacheはオープンソースのアプリケーションです。脆弱性などの問題がないか、随時情報を確認いただき、万一問題が発見された場合は、該当サービスの停止や、対応パッチがリリースされている場合は速やかに適用するなど、運用には十分ご注意ください。

Windows環境へのApache導入は、「XAMPP」というツールをご利用いただくと、必要なファイルが一度にインストールされ、レジストリも自動的に書き換えられます。

Apacheのみのインストールを行いたい場合は、以下手順にて行ってください。

no01.gifSSL対応のApacheをインストールしてください。
Apache Software Foundation

本例ではapache_2.2.6-win32-x86-openssl-0.9.8e.msi をインストールします。
ダウンロードしたファイルを実行し、ウィザードに沿ってインストールをおこなってください。

マイコンピュータのプロパティで、詳細設定を開き、環境変数ボタンを押します。

システム環境変数のPathをクリックして編集を選択します。

変数値に、;(セミコロン)で区切り、以下を追記してOKで閉じます。

C:\Program Files\Apache Software Foundation\Apache2.2\bin

引き続き環境変数にOpenssl.cnfのパスを追加設定します。「新規」ボタンを押してください。

以下のように設定します。

変数名 OPENSSL_CONF
変数値 C:\Program Files\Apache Software Foundation\Apache2.2\conf\openssl.cnf

設定が完了したら、コマンドプロンプトを立ち上げなおし、Opensslコマンドが実行できることを確認してください。

レジストリを修正します。スタートメニューの「ファイル名を指定して実行」で、regeditを入力して起動してください。

以下パスにある ImagePath までツリー表示を辿っていきます。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Apache2.2\ImagePath

ImagePathを右クリックし、「修正」を選択します。

-D SSL を追記してください。前後には半角スペースが入ります。

設定後サーバを再起動してください。

サーバ証明書を取得し、Apacheの設定ファイルを修正します。

サーバ証明書の申請に必要なCSRの生成方法は、LinuxのApacheと同様の手順です。
[CSR生成] Apache 2.x + mod_ssl + OpenSSL(新規・更新)

設定ファイルはデフォルトで以下の場所にあります。

c:\Program Files\Apache Software Foundation\Apache2.2\conf

httpd.confを開き、以下がコメントアウト(頭に#が記載)されている場合は解除します。

LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl.conf

また、コンテンツを置く領域(DocumentRoot)は、必要に応じて任意の場所に書き換えてください。

次にsslの設定を行ってください。お客様のサーバ証明書、中間証明書をサーバ上に保存し、設定ファイルでそのパスを指定します。
設定ファイルは、Apache2.2.xの場合 conf の中のextraディレクトリ内の「httpd-ssl.conf」です。

Listen 443  #443番ポート待ち受けの設定
SSLCertificateFile  #サーバ証明書のパスを設定
SSLCertfiticateKeyFile   #秘密鍵のパスを設定
SSLCertificateChainFile   #中間証明書のパスを設定

中間証明書はメールでもお送りしますが、リポジトリのページからもダウンロード可能です。

no06.gif設定が完了後、ApacheのConfigurationをテストします。

すべてのプログラム >> Apache HTTP Server 2.x.x >> Configure Apache Server >> Test Configuration

上記を実行し、エラーがある場合は設定ファイルの該当箇所を修正します。
SSLMutexのエラーが出る場合は、該当箇所をコメントアウト(行頭に#を記載)します。

# SSLMutex "file:C:/Program Files/Apache Software Foundation/Apache2.2/logs/ssl_mutex"

Apacheを起動します。

すべてのプログラム >> Apache HTTP Server 2.x.x >> Control Apache Server >> Start

※既に80番、443番ポートが別のアプリケーションで使用されている場合は起動できません。
netstatコマンド等で確認し、既にポートが Listen 状態となっている場合、何らかのアプリケーションが起動していないかご確認ください。
https:でアクセスできません。

起動後、http、httpsでの接続を確認してください。