ブラウザからMySQLをしばき倒せるphpmyadminをさくらVPSに導入です。既にWEBには同内容が沢山ありますが、VPSセットアップの流れをまとめるためにも記事にしておきます。
前もってリサーチしたところ、php-mcryptが必要とか、PHPとMySQLのバージョンによってはphpmyadminの3.x系は動かない等、前もって少し準備がいるかと思いましたが、全てyumさんがやってくれました。さすがにパッケージ管理専業です。
という訳で、一応PHPやMySQLのバージョンも確認していく流れで。
yumでインストール
phpmyadminの最新3.x系は PHP5.2 & MySQL5 以上で、2.x系は PHP4 & MySQL3 以上が必要とのことで、自分の環境で3.x系が動くかどうか確認。
php -v
mysql -V
私の場合はそれぞれphp5.3.3とMySQL5.1だったので、phpmyadmin3.x系が動きそうです。 早速yumでphpmyadminを入れます。
yum install phpmyadmin
yum updateをずっと実行していない場合、phpmyadmin3.x系が動く環境であっても2.x系がインストールされる可能性があるので、yum updateは頻繁に行いましょう。
ちなみに、yumで以前にインストールしたパッケージを見たい場合は、
yum list installed | grep php
こんな感じで。grepは必要なければいらないです。
phpMyAdmin.confを編集
phpmyadminがインストールできたら、早速コンフィグ。ローカルからしかアクセスできないのを、ネット経由でどこからでも使えるようにします。一応バックアップもとっておきます。
cp /etc/httpd/conf.d/phpMyAdmin.conf /etc/httpd/conf.d/phpMyAdmin.conf.org
vi /etc/httpd/conf.d/phpMyAdmin.conf
下のように編集しますが、Apacheのバージョンによって記述する場所が異なりました。 よって、httpd -vで確認してから編集してください。
<Directory /usr/share/phpMyAdmin/>
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
Require ip 127.0.0.1
Require ip ::1
</RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
#Order Deny,Allow // コメントアウト
#Deny from All // コメントアウト
#Allow from 127.0.0.1 // コメントアウト
#Allow from ::1 // コメントアウト
Order allow,deny // 追加
Allow from all // 追加
</IfModule>
</Directory>
設定ができたら、apacheをリスタートして反映。 ブラウザからアクセスしてみましょう。
service httpd restart
http://VPSのIPアドレス/phpmyadmin/
バーチャルドメインを設定していた場合は、自動的にその設定を取り込んでくれるようで、
http://example.com/phpmyadmin/
が有効になっていました。
BASICからCOOKIE認証へ
導入に成功した場合はBASIC認証が始まると思います。 このまま運用しても構いませんが、BASIC認証を一般的なCOOKIE認証にしたいと思います。
cp /etc/phpMyAdmin/config.inc.php /etc/phpMyAdmin/config.inc.php.org
vi /etc/phpMyAdmin/config.inc.php
- config.inc.php内
$cfg['blowfish_secret'] = 'パスフレーズ';(適当なパスフレーズ) $cfg['Servers'][$i]['auth_type'] = 'cookie';(認証タイプをcookieに変更)
今回はphpを編集しただけなので、apacheの再起動は必要ないです。ブラウザからアクセスしてログイン画面がでるのを確認。導入完了です。おつかれさでした。
参考にさせていただきました
さくらのVPSを使ってみる【5】-phpmyadminをインストールする | 初心者プログラマー奮闘記
さくらのVPS -phpMyAdminのインストールと初期設定- | 時にはWEBの話っ!
プログラミングで悩んだ時は
93%の回答率が売りのエンジニアのための無料Q&Aサイト「teratail」。長く悩んでも答えが出ない時の為に、登録しておけば助かるかもしれません。