linux/raspberry piでwebアプリの作成」カテゴリーアーカイブ

LAMP+CAKEPHPでWEBアプリを作成します。

WEBアプリの作成

raspberry pi(linux) CakePHP でWEBアプリを作ってみます。
サンプルとして顧客管理システムを作成します。
主なものとして次の機能の実装を予定しています。
1 顧客情報、対応履歴
2 ユーザ管理・ログイン・アクセス権の設定
3 IP-PBX Asteriskと連動し、発着信履歴、着信時に顧客情報をポップアップ表示

CakePHPはウィキペディアでは次のように紹介されています。
CakePHP(ケイクピーエイチピー)とは、PHPで書かれたオープンソースのWebアプリケーションフレームワークである。先行するRuby on Railsの概念の多くを取り入れており、Rails流の高速開発とPHPの機動性を兼ね備えたフレームワークと言われている。MITライセンスの元でフリーで配布されている。

CakePHPはbakeというコマンドがあり、規約に従ったテーブルを作成すると、このコマンドを実行することでModel、View、Controllerの基本的なファイルを生成する事ができます。
一覧、表示、編集、追加、削除機能が実装できます。
このままでも、十分実用的ですが、デザインを変更したり、機能を追加すると、市販のWEBアプリと見紛うようなアプリが作成できます。
CakePHPについての詳細は他の記事を参照して下さい。

今回はbakeで利用されるテンプレートをカスタマイズして、標準の機能より高機能なページを短時間で作成できるようにします。
動作環境として、RaspberryPIについて紹介しますが、CakePHPの環境が構築すれば、他のlinux,Mac、windowsでも同様に作成できます。

Raspberry Pi 2 (Raspbian) で LAMP 環境を構築する

CakePHPを動作する環境を構築します。
まず、WEBサーバ、データベース、スクリプトをインストールします。
Raspbian に LAMP (Linux + Apache + MySQL + PHP) 環境を構築します.
下記コマンドで完了です。

$sudo apt-get install -y apache2 php5 mysql-server phpmyadmin



PostgreSQL のインストール(phppgadmin)

Mysqlはディストリビューションの標準がMariaDBになったり、ライセンスがいろいろ複雑だったりするので、postgresqlを使用します。
postgresqlのライセンスについてはこちらを参照してください。
また、GUIで操作も出来るようにphpPgAdminもインストールします。

$sudo apt-get install postgresql
バージョン確認
psql –version
さて、インストールが確認できたらルートユーザーにパスワードを設定しましょう。PostgreSQL のルートユーザーは、デフォルトでは postgres です。そこで、この postgres ユーザーに強固なパスワードを設定しましょう。

$ sudo passwd postgres
パスワードを2回入力します。

正しくパスワードが更新されたら、su(substitute user=ユーザーの変更)コマンドで postgres ユーザーになってみましょう。
$su -postgres

この後 phppgadminでパスワードが必要になるので、postgresユーザーにパスワードを設定しておく。
$ psql -c “alter user postgres with password ‘(パスワード)'”
$ exit

GUI(WEB)からpostgresqlを管理出来るツールphpPgAdminインストールします。

$ sudo pat-get install phpPgAdmin

設定します。ネットワーク環境にあわせてください。
$ sudo vi /etc/phppgadmin/config.inc.php

$conf[‘extra_login_security’] = false;
$conf[‘owned_only’] = true;
上記を変更

sudo vi /etc/apache2/conf-enabled/phppgadmin.conf
Require ip 192.168.0.0/24
追加

$ sudo vi /etc/postgresql/9.4/main/pg_hba.conf
host all all 192.168.0.0/24 md5
追加

サービスを再起動
$sudo systemctl restart postgresql apache2

http://(サーバIP)/phppgadminでアクセスします。
該当サーバをクリックし、先に設定したpostgres,パスワードでログインできればOKです。



<広告 (注)以下の書籍は、このページの記載内容とは関係ありません。>

PostgreSQL徹底入門第3版 [ 笠原辰仁 ]

価格:3,542円
(2017/11/24 16:27時点)

PostgreSQL: Up and RunningA Practical Guide to the Advanced Open Source Database【電子書籍】[ Regina O. Obe ]

価格:3,024円
(2017/11/24 16:26時点)