まずはインストール

いよいよ開発環境をつくります。まずは基本的なプログラミング言語PHPで、データベースはMySQL、WEBサーバーはApacheの環境を作成します。さあ実行 !

えっと、須藤さんにお願いするとやってくれるんですよね。今回はphp、mysql、apacheともりだくさん!

そう、よく覚えてますね。以下、順にやっていきますよ。コンソールを表示して一緒に入力しましょう。ここから先、raspberrypiにSSH接続したマシンからも作業できるので、raspberrypiがLANにさえ接続していることが確保できれば、すすめられますよ。
pi@raspberrypi:~ $ sudo apt-get update
pi@raspberrypi:~ $ sudo apt-get install php7.3 php7.3-mbstring php7.3-gd php7.3-mysql php7.3-zip php7.3-intl php7.3-xml php7.3-sqlite3 mariadb-server
pi@raspberrypi:~ $ php -v
pi@raspberrypi:~ $ php -v
PHP 7.3.11-1~deb10u1 (cli) (built: Oct 26 2019 14:14:18) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.11, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.3.11-1~deb10u1, Copyright (c) 1999-2018, by Zend Technologies
.......こんな感じでずらずら表示されればOK

こんな感じでできたかな?では次ね。
php7.3などとPHPをインストールすると、自動的にapacheというWEBブラウザーからのアクセスを受け付けて、WEBページを出力してくれるプログラムも一緒にインストールされています。まずは表示を確認しましょう。
コマンドで、今apacheが動いていることを確認してみます。
pi@raspberrypi:~ $ sudo systemctl status apache2
● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2020-02-14 17:53:57 JST; 1min 19s ago
Docs: https://httpd.apache.org/docs/2.4/
Main PID: 9847 (apache2)
Tasks: 6 (limit: 2077)
Memory: 9.1M
CGroup: /system.slice/apache2.service
tq9847 /usr/sbin/apache2 -k start
tq9851 /usr/sbin/apache2 -k start
tq9852 /usr/sbin/apache2 -k start
tq9853 /usr/sbin/apache2 -k start
tq9854 /usr/sbin/apache2 -k start
mq9855 /usr/sbin/apache2 -k start
2月 14 17:53:57 raspberrypi systemd[1]: Starting The Apache HTTP Server...
2月 14 17:53:57 raspberrypi apachectl[9843]: AH00558: apache2: Could not reliably determine the server's fully qualified domai
2月 14 17:53:57 raspberrypi systemd[1]: Started The Apache HTTP Server.

ここで、http://192.168.0.10/ などのraspberrypiのIPアドレスを指定してブラウザを確認すると表示されるわけですね。

そう。まずは表示できるかを確認してみて。
Apache2設定

引き続き、どんどんやっていきましょう!!
phpの動作確認です
pi@raspberrypi:~ $ cd /var/www
pi@raspberrypi:/var/www $ sudo chown pi:pi html
pi@raspberrypi:/var/www $ cd html
pi@raspberrypi:/var/www/html $ vim index.php
<?php
// index.phpファイル
phpinfo();

改めて、 http://192.168.0.10/index.php やってみます。


いい感じ!
今のところ、特に何も設定しなくて大丈夫みたい
mariadb(データベース)
pi@raspberrypi:~ $ sudo cp /etc/mysql/my.cnf /etc/mysql/my.cnf.bak
# 念の為バックアップをとっておきます
pi@raspberrypi:~ $ sudo vim /etc/mysql/my.cnf
;; 以下を追加
[client-mariadb]
default-character-set = utf8mb4
# データーベースを再起動させます
pi@raspberrypi:~ $ sudo mariadb
MariaDB [(none)]> show variables like 'coll%';
+----------------------+--------------------+
| Variable_name | Value |
+----------------------+--------------------+
| collation_connection | utf8mb4_general_ci |
| collation_database | utf8mb4_general_ci |
| collation_server | utf8mb4_general_ci |
+----------------------+--------------------+
3 rows in set (0.007 sec)
MariaDB [(none)]> show variables like 'char%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8mb4 |
| character_set_connection | utf8mb4 |
| character_set_database | utf8mb4 |
| character_set_filesystem | binary |
| character_set_results | utf8mb4 |
| character_set_server | utf8mb4 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.006 sec)
MariaDB [(none)]>

文字コードも無事設定完了。あとは適当なデータベースを作ってアクセスできるようにしておきましょう。
pi@raspberrypi:/var/log/apache2 $ sudo mariadb
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 51
Server version: 10.3.22-MariaDB-0+deb10u1 Raspbian 10
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> use mysql
MariaDB [(none)]> create database food;
MariaDB [mysql]> show create database food;
+----------+------------------------------------------------------------------+
| Database | Create Database |
+----------+------------------------------------------------------------------+
| food | CREATE DATABASE `food` /*!40100 DEFAULT CHARACTER SET utf8mb4 */ |
+----------+------------------------------------------------------------------+
1 row in set (0.001 sec)
MariaDB [mysql]> create user 'yamada'@'localhost' identified by 'tarou';
Query OK, 0 rows affected (0.002 sec)
MariaDB [mysql]> select user,password from user;
+--------+-------------------------------------------+
| user | password |
+--------+-------------------------------------------+
| root | |
| yamada | *308FB2642D19E4EB0BCF853459CB6AD077AB3238 |
+--------+-------------------------------------------+
2 rows in set (0.001 sec)
MariaDB [mysql]> grant all on `food`.* to 'yamada'@'localhost';
Query OK, 0 rows affected (0.002 sec)
MariaDB [mysql]> exit
Bye
pi@raspberrypi:/var/log/apache2 $

順調に終了。あとはどんどん作るだけですね!

長くなってきたので、また別の機会に!
コメント