RのWeb制作

Webサービス制作のための技術情報を。データ分析(Python、機械学習コンペ他)や自作野球ゲームMeisyoのこと中心。

Web制作 VPS

(VPSでつくる) Nginx+PHPでHello World

投稿日:2021年5月7日 更新日:

連載第七回目です。

今回はGUIでデータベースを操作できるphpMyAdminのインストール準備のために、PHPという言語をインストールします。

この記事は、VPSで作るPythonでのWebアプリ運用環境の連載記事です。
その他については上記ページをお読みください。

1. PHPのインストール

PHPはyumにPHP5系しか入っていないようなので、EpelとRemiレポジトリをインストールします。

yum -y install epel-release
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

最低限のPHP関連のモジュールをインストールします。

yum -y install --enablerepo=remi-php71 php php-cli php-common php-devel php-fpm php-mbstring php-mysqlnd

※今回はPHP7.1にしました。5系より7系の方が処理が早いらしいので、そちらに切り替えました。

PHPのバージョンを確認します。

php -v

7.1と表示されると完了です。

2. PHP関係の環境設定

PHP.iniの環境設定を行っておきます。

vi /etc/php.ini

下記の設定を変更しておきます。
「/」コマンドで検索すると早く終わります。

date.timezone = "Asia/Tokyo"
expose_php = Off ; サーバーがPHPを導入しているか公表するかどうか
mbstring.language = Japanese
mbstring.internal_encoding = UTF-8 ; サーバー内での文字の扱い
mbstring.http_input = auto ; input_encodingが代わりに使われるべきなのでautoと明示しておく。

PHP-FPMの設定を行います。
NginxでPHPを使う場合はこのPHP-FPMが必須です。

vi /etc/php-fpm.d/www.conf

ただし、設定がApache用なのでそれを切り替えます。

user = nginx
group = nginx

設定を反映して起動、および自動起動設定をしておきます。

php-fpm -t
systemctl start php-fpm
systemctl enable php-fpm

3. PHPのテスト

PHPのテストコードを公開ディレクトリ(ルート)に作成します。

vi /usr/share/nginx/html/info.php

簡単なものにしておきます。

<?php
phpinfo();
?>

Nginxの設定を変更します。

sudo vi /etc/nginx/conf.d/default.conf

今の状態がコレです。

location / の中身を外に出して(緑枠)、新規追加(赤枠)を行います。

※最後の「;」を忘れるとエラーが出ます。

コピペ内容は以下の通りです。

    root        /usr/share/nginx/html;
    index       index.html index.htm index.php;

    location ~ \.php$ {
                fastcgi_pass 127.0.0.1:9000;
                fastcgi_index index.php;
                fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                include fastcgi_params;
    }

Nginxを再起動します。

systemctl restart nginx

最後に、info.phpにアクセスして動作を確認してください。
http://XXX.XXX.XXX.XXX/info.php

下記のように表示されればOKです!

不要であればファイルを削除しておきましょう。

rm -f /usr/share/nginx/html/info.php

おわりに

今回はPHPを導入しました。
これで基本的なPHPプログラムは実行できるようになりました!

次回はデータベースであるMariaDB(MySQL)をインストールします。

この記事は、VPSで作るPythonでのWebアプリ運用環境の連載記事です。
次は、8. MariaDB(MySQL)インストールです。

-Web制作, VPS

執筆者:


comment

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

関連記事

[Meisyo]試合一球分析用DBの追加

試合で一球ごとの分析用DBを追加しました。 なぜかというと、試合での投手vs打者における投球と打撃結果の因果関係が分からなかったからです。 もっとカンタンニシテ・・・ 例えば・・・ どのコースは打たれ …

ゲームアプリ運営の分析ノウハウ vol.2 新規登録者編

はじめに アプリ開発者によくある悩み・・・登録者がゲームを続けてくれません!!。 続けてくれないをより細かく言うと、(1)コンテンツを一通りプレイしてもらいたいのか、(2)毎日プレイしてほしいのかによ …

no image

[PHP]まとめ読みをPSRで改良する(4)

まとめ読みをPSRで改良する(3)から約一週間。 こんがらがっていた頭の中がすっきりして、なんとなくですがオブジェクト指向がわかってきたような気がします。 オブジェクト指向で大事そうなのは、機構(機能 …

no image

PHPのコーディング規則、PSRを学ぶ(2)

PHPのコーディング規則、PSRを学ぶ(1)の続きです。 今回は基本中の基本、文字コードと改行コードを設定します。 自宅サーバーで試します。(自宅サーバーの作り方はこちら) そのための基本設定も行いま …

(VPSでつくる) Python仮想環境venvの導入

連載第五回目です。 前回の4. Pythonのバージョンを3.Xにする記事で、Pythonのバージョン管理をディレクトリごとに行えるようになりました。 ただし、アプリごとにモジュールのバージョンは変え …