PHP環境構築は悪いこと言わないからXAMPPで済ませろ!と思った大事件

この記事は約 6 分で読めます。

みなさんこんばんは!ひろポンです!

久しぶりのブログなのですが、実は理由がありまして。。

実は、、、phpのフレームワークLaravelを使った開発で避けては通れない、apacheとmysqlのインストールで躓いてしまったんですね。。

私的には、プログラミングではまるのは全然いいのですが、、環境構築ではまってしまうと。すごく焦ってしまううんです。。

今回はその環境構築で、すごく時間がかかってしまった点などについて書いていこうと思います。

先にPHPとApacheをインストールしてしまったのが間違い

そもそも私がPHPを始めたのは、WEBアプリケーションを開発したい!と思ったのがきっかけです!

以前からWEBアプリ願望はあり、JavaのPlayFrameworkやpythonのdjangoなどをかじってはいたのですが、会社の研修講師に、WEBアプリを開発するなら、JavaScriptとPHPが簡単でおすすめです!と言われたんですね!

それを聞いてから一気に環境を構築しました!

Apacheをダウンロードして、サービス登録して、PHPをダウンロードしてパスを通したと思ったら、Composerが必要と知り、じゃあそれも!って感じで後付けでどんどん環境を構築していたんですね!

これで最初はいいと思っていたのですが、、Mysqlが必要⇒XAMPPのインストールってところからすべてが狂い始めました。

私がXAMPPに求めていたもの

XAMPPはPHPの開発環境をまとめて行ってくれるものと書きましたが、私はすでにPHPとApacheとComposerといったPHPの環境はある程度ありました。

この状態でDB以外の部分はある程度触れる状態だったんですね。

じゃあ私はXAMPPに何を求めていたのか。

それは、MysqlとphpMyAdminというものです。

現状DB以外の部分は触れると書きましたが、PHPはDBが使えてなんぼの言語です。

ということは、DBを使うための環境が必要になってきます。

それがMysqlとphpMyAdminなんですね。

それらを一気にインストールできるのが、XAMPPというわけです。

XAMPPで後からApacheをインストールした際に起こる事件

XAMPPというのは、PHPの開発環境を一気にインストールしてくれるもの!と思っていいと思います。

本来ならXAMPPでPHP、Apache、Mysqlなど一気に同じところから、インストールできればいいのですが、私の場合先ほど書いた通り、先にApacheとPHPが入っていました。

PHPはパスを通しているだけなので、大きな問題はないのですが、問題はwebサーバーのApache!!!!

Apacheが先にサービスに登録されていることが大問題

Apacheは基本的にWindowsが起動したときにバックグラウンドで自動的に起動するように設定がされています。これをWindowsサービスというのですが、Apacheを単品でインストールした場合、このサービスに登録されます。

これが大問題で、、Xamppで後からApacheをインストールしようとしたら、先にApacheがWindowsサービスに登録されているので、実行できないんですね。。

よくあるポート番号がSkypeと被っているから変更する。という処理をしても、そもそもサービスには単品でインストールされたApacheが登録されています。

ぶっちゃけすごいエンジニアさんなら、ここで先にApacheがインストールされてるなら、それをそのまま生かして、XamppはXamppでってなるのかもしれません。

ですが、私のようにPHP初心者です!って人には、そのような方法がわかりません。

となると、言語、サーバー、DB環境などまとめて環境構築したくなってきます。

それができるのがXamppというものなので、これからPHPを学ぼうと思っている方は、悪いことは言わないので、Xamppを使って環境構築したほうがいいと思います。

あとがき

今回MysqlとphpMyAdmin環境を入れたくなりXAMPPにて導入しようと思ったわけなんですが、はまりにはまり倒し、問題解決に数日かかりました。

そしてようやく、、環境ができたのでめちゃくちゃうれしくなり、ほぼ殴り書きのような感じの記事を書いてしまいました。。。

ですが今回改めて気づいたのは、SEてある意味Mなのかなーーと思いました。

プログラミングで数時間はまるってことはざらにありますし、正直その時間がしんどいです。

ですが、その後の問題を解決できた時の解放感といえば、、、、

やっぱりSEって好きだなーと思った瞬間でした。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA