Amazon Linux - PostgreSQL・Nginx・FuelPHP
インストール
参考: Amazon Linux AMIにpostgresqlをインストールする チュートリアル: Amazon Linux への LAMP ウェブサーバーのインストール
yumをアップデートして、phpとgitとvimとnginx入れた。アパッチとMySQLも入れた。
sudo yum update -y$ sudo yum install -y httpd24 php56 mysql55-server php56-mysqlnd$ sudo yum install -y git$ sudo yum install -y vim$ sudo yum install -y nginxpostgresql入れた。
$ sudo yum install -y postgresql$ sudo yum install -y postgresql-server postgresql-libs php-pgsqlエラーでた
$ sudo yum install -y postgresql-server postgresql-libs php-pgsql読み込んだプラグイン:priorities, update-motd, upgrade-helperパッケージ postgresql92-libs-9.2.15-1.57.amzn1.x86_64 はインストール済みか最新バージョンです依存性の解決をしています--> トランザクションの確認を実行しています。---> パッケージ php-pgsql.x86_64 0:5.3.29-1.8.amzn1 を インストール--> 依存性の処理をしています: php-pdo(x86-64) = 5.3.29-1.8.amzn1 のパッケージ: php-pgsql-5.3.29-1.8.amzn1.x86_64---> パッケージ postgresql92-server-compat.x86_64 0:9.2.15-1.57.amzn1 を インストール--> 依存性の処理をしています: postgresql92-server(x86-64) = 9.2.15-1.57.amzn1 のパッケージ: postgresql92-server-compat-9.2.15-1.57.amzn1.x86_64--> トランザクションの確認を実行しています。---> パッケージ php-pdo.x86_64 0:5.3.29-1.8.amzn1 を インストール--> 依存性の処理をしています: php-common(x86-64) = 5.3.29-1.8.amzn1 のパッケージ: php-pdo-5.3.29-1.8.amzn1.x86_64---> パッケージ postgresql92-server.x86_64 0:9.2.15-1.57.amzn1 を インストール--> トランザクションの確認を実行しています。---> パッケージ php-common.x86_64 0:5.3.29-1.8.amzn1 を インストール--> 衝突を処理しています: php56-common-5.6.19-1.123.amzn1.x86_64 は php-common < 5.5.22-1.98 と衝突しています--> 衝突を処理しています: php56-pdo-5.6.19-1.123.amzn1.x86_64 は php-pdo < 5.5.22-1.98 と衝突しています--> 依存性解決を終了しました。エラー: php56-pdo conflicts with php-pdo-5.3.29-1.8.amzn1.x86_64エラー: php56-common conflicts with php-common-5.3.29-1.8.amzn1.x86_64 問題を回避するために --skip-broken を用いることができます。 これらを試行できます: rpm -Va --nofiles --nodigestphp56と指定しないといけないっぽい。
$ sudo yum install -y postgresql-server postgresql-libs php56-pgsqlこれで必要なの入った。
postgreSQLの設定する
postgresユーザにパスワード設定
$ sudo passwd postgrespostgresユーザに切り替える
$ su - postgres基本データベース生成とサービス開始
$ initdb --encoding=UTF8 --no-locale$ pg_ctl start$ exit$ chkconfig postgresql onデータベース作成する
$ psql -U posgrespostgres=# create database hoge;NginxでPHP使えるようにする
php-fpmをインストールする
$ sudo yum install -y php56-fpmphp-fpmの設定をする
下記のwww.confのuserとかgroupがapacheになっているので、nginxに変更します。
$ sudo vim /etc/php-fpm.d/www.confNginxでFuelphpが動くようにする
下記、nginx.confを修正していく。
$ sudo vim /etc/nginx/nginx.conf下記箇所を、/usr/share/nginx/hoge/publicとかにする。
root /usr/share/nginx/html参考:http://fuelphp.jp/docs/1.8/installation/instructions.html 下記のように変更する。
location / { index index.php; try_files $uri $uri/ /index.php$is_args$args;}
location ~ \.php$ { include fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param FUEL_ENV "production"; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;}nginxとphp-fpmを再起動する
$ sudo service php-fpm restart$ sudo service nginx restartFuelPHPをcloneする
FuelPHPはローカルで作ってるやつをcloneする。
$ cd /usr/share/nginx/$ sudo git clone https://hogehoge.gitFuelPHPのcomposer installする
$ cd /usr/share/nginx/hoge$ ./composer.phar installphpPgAdminインストール
参考:phpPgAdminのインストール – CentOS6.5(Vagrant)
とりあえず、ローカルで上記サイトに記載のURLから、ダウンロードして、展開して、gitリポジトリに追加して、pullした。常時使える必要はなかったので、nginxのrootを変更してちょっとだけ使った。