さくらVPSでphpMyAdmin

さくらVPSでCentOS7のスタートアップスクリプトを使用してインストールされたLAMP環境でphpMyAdminをインストール

さくらVPSでスタートアップスクリプトに「public」CentOS_LAMP」を選択してインストールしたCentOS 7.0(以下「CentOS7Server」)に「さくらVPSでMySQL」の内容でMariaDBの設定を行った後、phpMyAdminをインストールしました。

◎phpMyAdmin用のユーザーの作成

  • phpMyAdmin用のユーザー(phpmyadmin)を作成しました。

    $ su -
    パスワード:
    # adduser phpmyadmin
    # passwd phpmyadmin
    Changing password for user phpmyadmin.
    New password: 
    Retype new password: 
    passwd: all authentication tokens updated successfully.
    

◎phpMyAdminのインストール

  • suコマンドで、phpMyAdmin用のユーザー(phpmyadmin)になりました。

    # su phpmyadmin
    $ pwd
    /home/phpmyadmin
    
  • ユーザー(phpmyadmin)のホームディレクトリでwgetコマンドを使用して、phpMyAdminのソースファイル(phpMyAdmin-4.8.5-all-languages.zip)をダウンロードしました。

    $ wget https://files.phpmyadmin.net/phpMyAdmin/4.8.5/phpMyAdmin-4.8.5-all-languages.zip
    $ ls
    phpMyAdmin-4.8.5-all-languages.zip
    
  • ダウンロードしたphpMyAdminのソースファイル(phpMyAdmin-4.8.5-all-languages.zip)を解凍し、解凍して出来たフォルダの名前を「public_html」に変更しました。

    $ unzip phpMyAdmin-4.8.5-all-languages.zip
    $ mv phpMyAdmin-4.8.5-all-languages public_html
    $ (rm phpMyAdmin-4.8.5-all-languages.zip)
    
  • 「public_html」に移動し、「config.sample.inc.php」をコピーして「config.inc.php」を作成しました。

    $ cd public_html
    $ cp config.sample.inc.php config.inc.php
    
  • エディタ(nano)で「config.inc.php」を編集し、$cfg[‘blowfish_secret’] に適当な語句を設定しました。

    $ nano config.inc.php
    
    • ($cfg[‘blowfish_secret’]の文字列の長さが短すぎると後で怒られます。)
      $cfg['blowfish_secret'] = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'; 
      

◎Apacheの設定

  • /etc/httpd/conf.d/userdir.confを修正して、ユーザーのホームページが公開できるようにしました。

    $ su -
    # cd /etc/httpd/conf.d/
    # cp userdir.conf userdir.conf.org
    # nano /etc/httpd/conf.d/userdir.conf
    
    • 修正内容は、以下の内容です。

      ###UserDir disabled
      UserDir enable
      ###UserDir public_html
      UserDir public_html
      
  • /home/phpmyadmin/public_html/の権限を変更しました。

    # chmod g+x /home/phpmyadmin/
    # chown :apache /home/phpmyadmin/
    
  • 「http://(サーバーのURL)/~phpmyadmin/」にアクセスしたら「mysqli 拡張がありません。」のエラーが出たので、php-mysqlndとphp-mysqliをyumでインストールしました。

    # yum-config-manager --enable remi-php73
    # yum install php-mysqlnd
    
  • httpdを再起動して、「http://(サーバーのURL)/~phpmyadmin/」にアクセスしたら、無事にログイン画面が表示されましたが、ログイン後の画面で「PHP の mbstring 拡張が見つかりませんでした。」というエラーが出ました。

    # systemctl restart httpd
    
  • 「PHP の mbstring 拡張が見つかりませんでした。」への対応としてphp-mbstringをyumでインストールしたら、エラーがでなくなりました。

    # yum install php-mbstring
    # systemctl restart httpd
    

Basic認証

  • phpMyAdminのホームページ「http://(サーバーのURL)/~phpmyadmin/」でBasic認証を行うために、「/var/www」フォルダ以下にユーザー名:「phpmyadmin」(任意)で「.htpasswd」を作成しました。
    # cd /var/www
    # htpasswd -c /var/www/.htpasswd phpmyadmin
    New password: 
    Re-type new password: 
    Adding password for user phpmyadmin
    
  • 続いて、「/home/phpmyadmin/public_html」フォルダに「.htaccess」を作成しました。
    # cd /home/phpmyadmin/public_html
    # nano .htaccess
    
    • 「.htaccess」の内容は下記のように記載しました。
      AuthType Basic
      	AuthUserFile /var/www/.htpasswd
      	AuthName "Please enter your name and password."
      	Require valid-user
      
  • phpMyAdminのホームページ「http://(サーバーのURL)/~phpmyadmin/」にアクセスすると認証ダイアログがポップアップ表示されたので、設定したユーザー名とパスワードで認証出来ることを確認しました。
<= さくらVPSでMySQL | | さくらVPSでWordPress => |