LAMP環境を構築するを参考に Armadillo-IoT(G3)にLAMP環境(Apache+MySQL+PHP)を構築してみました。
1.インストール前の準備
Armadillo-IoT(G3)をインターネット接続可能なネットワークに接続して起動します。
現在の日付を設定します。(下記は、2016/06/20 14:11の場合)
root@armadillo-iotg:~# date -s "06/20 14:11 2016"
最新のパッケージを取得します。
root@armadillo-iotg:~# apt-get update
root@armadillo-iotg:~# apt-get upgrade
備考)
以降、apt-getコマンドを実行して、
Do you want to continue? [Y/n]
と聞かれた場合は、"y"と入力してください。
2.インストール
apt-getコマンドで、Apache、MySQL、PHPをインストールします。
root@armadillo-iotg:~# apt-get install apache2
root@armadillo-iotg:~# apt-get install mysql-server
-------------------------------------------------------------------
補足)mysql-serverインストール時に
New password for the MySQL "root" user:
と聞かれるので、パスワードは任意に設定してください。(ここでは、"root"としました。)
-------------------------------------------------------------------
root@armadillo-iotg:~# apt-get install mysql-client
root@armadillo-iotg:~# apt-get install php5
root@armadillo-iotg:~# apt-get install php5-mysql
3.Apache設定
ユーザー(名前は任意。ここではuser1)とグループ(wheel)を追加します。
root@armadillo-iotg:~# useradd -m user1
root@armadillo-iotg:~# passwd user1
root@armadillo-iotg:~# vi /etc/pam.d/su
のように"user1"(パスワードは"user1")を追加後、suファイルを開いて、
# auth required pam_wheel.so
の下に
auth required pam_wheel.so group=wheel
を追加します。
ユーザ(user1)をグループ(wheel)に追加します。
root@armadillo-iotg:~# addgroup --gid 11 wheel
root@armadillo-iotg:~# usermod -a -G wheel user1
Apacheに、ユーザー、グループを設定します。
root@armadillo-iotg:~# vi /etc/apache2/apache2.conf
で、apache2.confファイルを開いて、
User ${APACHE_RUN_USER}
Group ${APACHE_RUN_GROUP}
を
User user1
Group wheel
に変更します。
ドキュメントルート(/var/www/)の所有者を上記ユーザー/グループに設定します。
root@armadillo-iotg:~# chown -R user1:wheel /var/www/
Armadillo-IoT(G3)では、デフォルトでlighttpdというWebサーバーが起動しているので、停止します。
root@armadillo-iotg:~# /etc/init.d/lighttpd stop
Apacheを起動します。
root@armadillo-iotg:~# /etc/init.d/apache2 restart
ブラウザで、 [ArmadilloのIPアドレス] にアクセスすると、Apacheの画面を見ることができます。
4.MySQL設定
root@armadillo-iotg:~# vi /etc/hosts.allow
で、hosts.allowファイルを開いて、
mysqld : localhost : allow
mysqld : ALL : deny
を追加します。
mysqlを起動します。
root@armadillo-iotg:~# mysql -u root -p
----------------------------------------------------------------------
Enter password: # インストール(上記の手順2)時に設定したパスワード。
----------------------------------------------------------------------
ユーザーを確認してみます。
mysql> select user,host,password from mysql.user;
+------------------+----------------+-------------------------------------------+
| user | host | password |
+------------------+----------------+-------------------------------------------+
| root | localhost | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| root | armadillo-iotg | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| root | 127.0.0.1 | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| root | ::1 | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| debian-sys-maint | localhost | *7B11804127CC81E4E50E94ABCF8E8698D9F79141 |
+------------------+----------------+-------------------------------------------+
5 rows in set (0.00 sec)
データベースを確認してみます。
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)
ユーザを作成します。(以降、ユーザー名"user1"で、上記の手順2でパスワードを"root"にした場合)
mysql> grant select, insert, update, delete, create, drop, index, alter on *.* to user1@"localhost" identified by "root";
Query OK, 0 rows affected (0.00 sec)
ユーザが作成されたことを確認します。
mysql> select user,host,password from mysql.user;
+------------------+----------------+-------------------------------------------+
| user | host | password |
+------------------+----------------+-------------------------------------------+
| root | localhost | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| root | armadillo-iotg | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| root | 127.0.0.1 | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| root | ::1 | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
| debian-sys-maint | localhost | *7B11804127CC81E4E50E94ABCF8E8698D9F79141 |
| user1 | localhost | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |
+------------------+----------------+-------------------------------------------+
6 rows in set (0.00 sec)
終了します。
mysql> quit
Bye
5.PHPの確認
Apacheの設定で、MIMEタイプを追加します。
root@armadillo-iotg:~# vi /etc/apache2/mods-available/mime.conf
で、mime.confを開いて、
AddType application/x-bzip2 .bz2
の下に
AddType application/x-httpd-php .php
を追加します。
Apacheを再起動します。
root@armadillo-iotg:~# /etc/init.d/apache2 restart
root@armadillo-iotg:~# vi /var/www/html/phpinfo.php
で、phpinfo.phpファイルを開いて、
<?php
phpinfo();
?>
と記述します。
ブラウザで、 [ArmadilloのIPアドレス]/phpinfo.php にアクセスすると、phpinfoの画面を見ることができます。
補足) 手順3より、Armadillo-IoT(G3)のデフォルトでは、Webサーバー:lighttpdが自動起動しています。 そのため、
root@armadillo-iotg:~# /etc/init.d/lighttpd stop
root@armadillo-iotg:~# /etc/init.d/apache2 restart
が必要になります。
次回起動時以降、Webサーバー:lighttpdを自動起動させないには、
root@armadillo-iotg:/etc# update-rc.d lighttpd disable
とします。
なお、元に戻す(lighttpdを自動起動する)には、
root@armadillo-iotg:/etc# update-rc.d lighttpd enable
とします。