PHPの開発環境をEclipse IDEで構築しようと取り掛かったわけですが、予想通り構築に手間取ったので、そのときの記録です。
XAMPPのApacheにより作成したローカルホストにアクセスできない問題を解決します。具体的にはEclipse IDEにて作成したPHPファイルがローカルホストに表示できず、404エラーが発生してしまいました。
結果からいうと、ApacheのDocumentRootと、Eclipceのワークスペースのパスを同じにすることで解決できました。
開発環境
Windows 10
XAMPP v3.2.4
Apache v2.2.41(Win64)
Eclipse 2019-12
PHP v7.4.1
Eclipseで環境構築する際は、ワークスペースの場所が重要です。Apacheでローカルホストを作成する場合、Apacheがローカルホストへ描写するドキュメントファイル(html, phpなど)の参照場所が、Eclipceのワークスペースと同じ場所にする必要があります。
XAMPP Apacheのドキュメントルートを確認する
XAMPPでApacheをインストールした際、デフォルトでは以下のパスがドキュメントルートとなっています。
<Apacheドキュメントルート(デフォルト)>
C:\xampp\htdocs
(Cドライブ直下へXAMPPをインストールした場合です。)
このドキュメントルートは、XAMPPのApache Config > Apache(httpd.conf)で編集できます。
httpd.confはC:\xampp\apache\conf\httpd.confのパスからも確認できます。
httpd.confをテキストエディタで開き、252行あたりに以下のような記述があります。
# DocumentRoot: The directory out of which you will serve your # documents. By default, all requests are taken from this directory, but # symbolic links and aliases may be used to point to other locations. # DocumentRoot "C:\xampp\htdocs"
最後の行のダブルコーテーションで囲まれたパスがドキュメントルートになります。#コメント文にはsymbolic links やaliasesを使うことでドキュメントルートを他の場所に設定できるとありますが、初心者の場合はこのDocumentRootを設定するのが無難だと思います。
また、DocumentRoot~~の直下に以下の記述があります。
<Directory "C:\xampp\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 Includes ExecCGI
#
# 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 All
#
# Controls who can get stuff from this server.
#
Require all granted
</Directory>
重要なのは、最下行DocumentRoot “C:\xampp\htdocs“と、最上行の<Directory “C:\xampp\htdocs“>です。
デフォルトでは、C:\xampp\htdocsですが、この2か所のパスを直接書き換えることで、ドキュメントルートを変更できます。
EclipceのワークスペースをApacheのドキュメントルートへ設定
Apacheのドキュメントルートを確認したところで、Eclipseのワークスペースを設定していきましょう。
<Eclipseのワークスペースの切り替え>
1.ファイル > ワークスペースの切り替え > その他
2. EclipseのワークスペースをApacheドキュメントルートに設定
ワークスペース(W)横の参照から、Apacheのドキュメントルート(デフォルトではC:\xampp\htdocs)を設定します。
起動を押すと、Eclipseが再起動します。
3.Eclipseからローカルホストへアクセスできるか確認
Eclipseの旧ワークスペースで作成したProjectファイルはApacheのドキュメントルートへコピペするだけでは使えませんでした。今回はHelloWorldしか書いていなかったのでプロジェクトを新規作成し、ローカルホストへアクセスできるか確認してみました。
PHPファイルを作成し、右クリック > 実行 > PHP Webアプリケーション
URLの並びは、http://localhost/プロジェクト名/ファイル名.phpになります。
http://localhostのパス=Apacheのドキュメントルート(C:\xampp\htdocs)のようになっているわけですね。
無事ローカルホストへアクセスできました!
以上になります。最後まで読んでいただきありがとうございました。






