PHPのbuilt-inモードで軽量なローカル環境の構築

Pocket
LINEで送る
GREE にシェア
LinkedIn にシェア

こんにちは。
 

ノートPCでWEBサービス開発をしていると、ノートPCが非常に熱くなってしまうことに悩んでいた、下駄です。
 

ノートPCが熱くなるのは、CPUの使いすぎという事なんですが、実際には、Docker環境を常に立ち上げていて、まあまあ複雑なサーバー環境を構築しているのが原因なんですけどね。
 

でも、MAMPを使っても非常に高熱化したし、VM系の仮装サーバーもアッツアツ状態になる。
 

夏場は溜まったモンじゃありません。
 

PHPだけでいいのだ

web開発は、LAMP環境として、php+apache+mysqlをセットで起動しないといけないので、mac本体にそのモジュールをbrewなどでインストールしておけば、macのローカル環境構築はできてしまうが、
 

実は、僕の使っているフレームワークは、phpだけで、データ管理もできて、非常に軽量に動作し、google-insiteでの点数計測をすると、80点オーバーを取得することができるスグレモノで、
 

これを使うには、phpサーバー環境だけあればOKなんです。
 

ということで、PHP ver5.4.0から利用可能な「Built-in web-server」機能というのがあることを思い出した。
 

この機能は、phpがインストールされている端末に任意ポートでのアクセスでphpが動作できるようになる、簡易サーバーにすることができる機能です。
 

メリットとしては、apacheやnginxなしでも、アクセスによってphpを実行することができます。
 

ようするに、最低限の機能でphpサーバーを立ち上げて、且つ、他のモジュールを起動しない分、軽量で省電力で軽量という事は、簡単に理解できます。
 

とりあえず、使ってみてなんぼなので、調査も兼ねて、ビルトインwebサーバーを使ってみることにしました。

Built-in Web-serverの使い方

この機能の実行方法は、PHPがインストールされているmac(pc端末や、サーバー)で、以下のコマンドを実行するだけです。
 

 

phpのcliがlocalhostの8080ポートを監視して、実行するという事がわかります。
 

そして、フレームワークを立ち上げてみたところ見事無事に実行成功しました。
 

apacheがなくても、jsファイルやcssファイルも、urlアクセスで取得できていて、これはこれで便利ですね。
 

80番ポートは使えない

上記コマンドで80番ポートを指定した場合に、エラーが出たので、どうやら権限エラーになるとのことでした。
 

 

8080や8000ポートなど、無難な開発ポート環境で使っても良いんですが、どうしても80番ポートで立ち上げたい時は、以下のように実行しましょう。
 

 

errorログの確認方法

そういや、web開発をする時に、nginxのエラーログをデバッグトラッカーとして使っていたんだけど、ビルトインサーバーの場合は、こうしたアクセスやエラーログは、どこかに吐き出されているのだろうか?
 

text.phpを作って、ワザと間違った記述をしてみたところ、ちゃんと、コマンドに表示されていました。
 

 

 

これで、ほぼ問題なく、PHPだけの開発環境として使えることが分かりました。
 

いや〜、効率・効率!

あ、そうそう、今回使っているフレームワークに興味がある人は、コメントなどでお問い合わせください。
 

ビジネスなどでも、かなり使えるシロモノですよ。

参考

PHP : ビルトインウェブサーバー
https://www.php.net/manual/ja/features.commandline.webserver.php
 

Leave a Reply

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