Apache2.4.23のインストール

広告

Apacheのインストールと設定ファイルの初期設定について解説します。前のページでダウンロードしたファイルはインストーラー付きではありませんのでまずファイルの展開を行い、その後で設定ファイルの中の必要箇所を修正します。

1.Apacheのインストール
2.設定ファイルの修正

Apacheのインストールはダウンロードした圧縮ファイルを展開して配置するだけで完了します。ダウンロードした「httpd-2.4.23-win64-VC14.zip」ファイルを展開して任意のディレクトリに配置して下さい。

展開されるファイルはデフォルトでは「Apache24」という名前のディレクトリ内に入っています。今回は「c:\pg\Apache\Apache24\」のように展開しました。

p2-1

インストールは以上で完了です。

ファイルを展開したディレクトリに合わせて設定ファイルを修正します。設定ファイルは「(インストールしたディレクトリ)\Apache24\conf\」ディレクトリに入っている「http.conf」ファイルです。

p2-2

ファイルの修正を行う前にコピーしたものをバックアップとして保存しておきました(念のためなのでどちらでもいいです)。

p2-3

「http.conf」ファイルはテキストファイルですのでテキストエディタで開いて下さい。

p2-4

まず最初にファイル内で「ServerRoot」を検索して下さい。次のような記載が見つかります。

ServerRoot "c:/Apache24"

これをインストールしたディレクトリに合わせて次のように変更します。

ServerRoot "c:/pg/Apache/Apache24"

同じように設定ファイル内に3か所インストールしたディレクトリに関する記述があるので同じように変更して下さい。

変更前:

DocumentRoot "c:/Apache24/htdocs"
<Directory "c:/Apache24/htdocs">
    #
    # Possible values for the Options directive are "None", "All",
    # or any combination of:
    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
    #
    # Note that "MultiViews" must be named *explicitly* --- "Options All"
    # doesn't give it to you.
    #
    # The Options directive is both complicated and important.  Please see
    # http://httpd.apache.org/docs/2.4/mod/core.html#options
    # for more information.
    #
    Options Indexes FollowSymLinks

    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   AllowOverride FileInfo AuthConfig Limit
    #
    AllowOverride None

    #
    # Controls who can get stuff from this server.
    #
    Require all granted
</Directory>

変更後:

DocumentRoot "c:/pg/Apache/Apache24/htdocs"
<Directory "c:/pg/Apache/Apache24/htdocs">
    #
    # Possible values for the Options directive are "None", "All",
    # or any combination of:
    #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
    #
    # Note that "MultiViews" must be named *explicitly* --- "Options All"
    # doesn't give it to you.
    #
    # The Options directive is both complicated and important.  Please see
    # http://httpd.apache.org/docs/2.4/mod/core.html#options
    # for more information.
    #
    Options Indexes FollowSymLinks

    #
    # AllowOverride controls what directives may be placed in .htaccess files.
    # It can be "All", "None", or any combination of the keywords:
    #   AllowOverride FileInfo AuthConfig Limit
    #
    AllowOverride None

    #
    # Controls who can get stuff from this server.
    #
    Require all granted
</Directory>

変更前:

<IfModule alias_module>
    #
    # Redirect: Allows you to tell clients about documents that used to 
    # exist in your server's namespace, but do not anymore. The client 
    # will make a new request for the document at its new location.
    # Example:
    # Redirect permanent /foo http://www.example.com/bar

    #
    # Alias: Maps web paths into filesystem paths and is used to
    # access content that does not live under the DocumentRoot.
    # Example:
    # Alias /webpath /full/filesystem/path
    #
    # If you include a trailing / on /webpath then the server will
    # require it to be present in the URL.  You will also likely
    # need to provide a  section to allow access to
    # the filesystem path.

    #
    # ScriptAlias: This controls which directories contain server scripts. 
    # ScriptAliases are essentially the same as Aliases, except that
    # documents in the target directory are treated as applications and
    # run by the server when requested rather than as documents sent to the
    # client.  The same rules about trailing "/" apply to ScriptAlias
    # directives as to Alias.
    #
    ScriptAlias /cgi-bin/ "c:/Apache24/cgi-bin/"

</IfModule>

変更後:

<IfModule alias_module>
    #
    # Redirect: Allows you to tell clients about documents that used to 
    # exist in your server's namespace, but do not anymore. The client 
    # will make a new request for the document at its new location.
    # Example:
    # Redirect permanent /foo http://www.example.com/bar

    #
    # Alias: Maps web paths into filesystem paths and is used to
    # access content that does not live under the DocumentRoot.
    # Example:
    # Alias /webpath /full/filesystem/path
    #
    # If you include a trailing / on /webpath then the server will
    # require it to be present in the URL.  You will also likely
    # need to provide a  section to allow access to
    # the filesystem path.

    #
    # ScriptAlias: This controls which directories contain server scripts. 
    # ScriptAliases are essentially the same as Aliases, except that
    # documents in the target directory are treated as applications and
    # run by the server when requested rather than as documents sent to the
    # client.  The same rules about trailing "/" apply to ScriptAlias
    # directives as to Alias.
    #
    ScriptAlias /cgi-bin/ "c:/pg/Apache/Apache24/cgi-bin/"

</IfModule>

変更前:

<Directory "c:/Apache24/cgi-bin">
    AllowOverride None
    Options None
    Require all granted
</Directory>

変更後:

<Directory "c:/pg/Apache/Apache24/cgi-bin">
    AllowOverride None
    Options None
    Require all granted
</Directory>

次にポート番号の設定を確認します。ファイル内で「Listen」を検索して下さい。

Listen 80

使用するポート番号はデフォルトで80番となっています。通常はこれで問題ありませんが、既に他のアプリケーションで使用していると分かっている場合には変更して下さい。

最後に「ServerName」の設定です。ファイル内で「ServerName」を検索して下さい。

#
# ServerName gives the name and port that the server uses to identify itself.
# This can often be determined automatically, but we recommend you specify
# it explicitly to prevent problems during startup.
#
# If your host doesn't have a registered DNS name, enter its IP address here.
#
#ServerName www.example.com:80

先頭が"#"の行はコメントとして扱われており、初期設定では有効となっていません。ただ明確に設定しておくことが推奨されています。公開サーバであればそのホスト名+ポート番号(ポート番号を省略した場合は先に設定した「Listen」に設定したポート番号が使用されます)を指定して下さい。ローカルで動かす場合は"localhost:80"や"127.0.0.1:80"を指定して下さい。

今回は「ServerName」の前の「#」を削除して次のように変更しました。

#
# ServerName gives the name and port that the server uses to identify itself.
# This can often be determined automatically, but we recommend you specify
# it explicitly to prevent problems during startup.
#
# If your host doesn't have a registered DNS name, enter its IP address here.
#
ServerName www.example.com:80

設定が終わりましたらファイルを保存しておいて下さい。これでApacheのインストールと事前準備は完了です。

( Written by Tatsuo Ikura )