1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【PHP】ワイ、客先でウェブサーバーをビルトするの巻

Last updated at Posted at 2020-06-14
1 / 17

はじめに

この記事では
PHPの導入方法や使い方ついて
まとめた記事です。
ベストプラクティスや間違いがあれば
書き直していく予定です。
今回は導入時とそのつまづきポイントについて
とビルトインウェブサーバーについて書きます。


想定される環境

客先常駐
Windows10 Pro 64bit
PHP 7.2.31


それってさぁ

そうです。
イマドキはdockerもしくは
クラウドでやるのが当たり前になっています。


便利にしたいけど、んー

便利なものがあれば使えば良いんじゃないのって
なるのが普通ですが実行に移す上で
解決すべき問題が複数あります。


問題点

・環境を好きに扱うことは難しいこと
・技術レベルがかなりのミスマッチであること
・学習コストがかかりすぎること


環境を好きに扱うことが難しいこと

お客様先の環境を好きに扱うことは難しいこと

これについては正直3つの中でもっとも難しい話でした。
というのもやはり、情報セキュリティが厳しい中
お客様先にソフトウェアを導入するには
お客様との信頼関係が必要

一番難しい話でしたが
これについては地道な努力が実を結び
知らず知らずのうちに信頼されていました。


技術レベルがかなりのミスマッチであること

新人くんなどの研修を聞くと
オンプレミス前提の内容がまぁ多いこと

なぜ、手軽なコンテナ技術を使わないのか
とても疑問ですが
それを言うと私も現場の技術選定に
dockerを選択していないので
人のこと言えないのかなと思うので
いつかは入れる!いや、今年中にはdockerを導入したい!


学習コストがかかりすぎること

docker上でPHPをやるためには
まず、dockerでサーバをビルトしないといけない。
(PHPの学習に辿り着けない???)

そもそもインフラをコード化するという
infrastructure as code(IaC) すら
知らない状況でdockerをぶち込むのは
かなりの鬼畜、相当鬼畜


ビルトインウェブサーバーとは

話がそれましたが
ざっくりいうと
PHP 5.4.0 から導入されたウェブサーバーの機能

ローカルホストのアドレスとポート番号を
指定すると
そのアドレス上でPHPを動かしてくれる。

ローカルホストにポート8080でサーバをビルトするコマンド例

$ php -S localhost:8080

参考サイト
php.net


どんなときに使える

・xammpが使えない環境のとき
・ちょっとだけ実行内容を確認したいとき
・PHPを教えるとき


導入方法

php.net から
zipでダウンロードする

解凍して任意の場所にフォルダを置く

環境変数PATHにフォルダパスを通す

php.iniを設定する。

ちなみにここで私はPostgresSQLを使う予定なので
php.ini の 907行あたりで

extension=pdo_pgsql

を記載しました。


さて動かしてみ。。。ん?

ヨシッ!動かすぞ!!
ん?? phpinfoで設定内容を見ると

反映していないはずのmysqlとsqliteのpdoが反映されている!!


怪奇現象の原因

もともと、xamppをインストールしている端末でした。
xammpをアンインストールして
xammpフォルダを削除することで解決しました。


今後の方針

Laravel入れて
自分の業務効率化の為にアプリケーションでも作ろうかしら。
そうなると
Laravelの導入方法も調べないとダメね。


おわり


1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?