from here
IMPORTANT
The effect of installing phpmyadmin is to discard mysql host based authentication, as connections via phpmyadmin will appear to come from localhost. For this reason, phpmyadmin should be protected by .htaccess as described below.
Install
* ApacheWebServer
* ApacheNexusAuthentication
*
cd /usr/ports/databases/phpmyadmin
make
make install
ln -s /usr/local/www/phpMyAdmin /usr/local/www/data/phpMyAdmin
cd /usr/local/www/data/phpMyAdmin
cp config.inc.php.sample config.inc.php
vi config.inc.php
And change:
$cfg['PmaAbsoluteUri'] = ”;
$cfg['blowfish_secret'] = ”
$cfg['Servers'][$i]['auth_type'] = ‘config’; // Authentication method (config, http or cookie based)?
$cfg['ShowChgPassword'] = FALSE; // simple users or not
to:
$cfg['PmaAbsoluteUri'] = ‘https://yourhost.yourdomain/phpMyAdmin/’;
$cfg['blowfish_secret'] = ‘YourSecRet’
$cfg['Servers'][$i]['auth_type'] = ‘cookie’; // Authentication method (config, http or cookie based)?
$cfg['ShowChgPassword'] = TRUE; // simple users or not
* Add to /usr/local/etc/apache/httpd.conf:
<Directory /usr/local/www/data/phpMyAdmin>
Allow from all
AllowOverride All
</Directory>
* Create /usr/local/www/data/phpMyAdmin/.htaccess as shown in ApacheWebServer in the mod_auth_radius section, except instead of:
require valid-user
use
require user list-of-users
where list-of-users is a space separated list of trusted users
The reason for the .htaccess on the phpMyAdmin directory is to protect the mysql databases from unauthorized access. Often, mysql is configured to permit access from specific hosts, typically localhost, and weak passwords may be employed. phpMyAdmin will connect to the local database and appear to come from localhost, rendering useless mysql host based permissions.