在FreeBSD 12上用Nginx安装phpMyAdmin
前提条件
确保FEMB堆栈已启动并在FreeBSD 12服务器上运行,
如果上面没有安装以下必需的php扩展:
php72-mysqli php72-json php72-mbstring php72-session php72-hash
一旦满足上述先决条件,请按如下步骤操作;
安装phpmyadmin
但是,在最新的功能支持方面,软件包可能不是最新的,在这种情况下,你可以从以下网址下载最新版本的phpMyAdmin : 下载页面 并将它移动到Nginx web root目录进行安装。
在FreeBSD 12上安装phpMyAdmin
验证默认FreeBSD 12存储库上是否提供了最新版本的phpMyAdmin,版本4.8.4,支持PHP 5.6至7.2和MySQL 5.6及更高版本。
# cd /usr/ports/databases/phpmyadmin
#make install clean
配置phpmyadmin
phpMyAdmin安装到以下目录
/usr/local/www/phpMyAdmin
重命名或者复制一份phpMyAdmin配置文件,如下所示:
#cd /usr/local/www/phpMyAdmin
#cp config.sample.inc.php config.inc.php
为Nginx web server root的符号目录,如下所示,
ln -s /usr/local/www/phpMyAdmin/ /usr/local/www/nginx-dist/phpmyadmin
核实软链接一下是否正确
#ls -l /usr/local/www/nginx-dist/phpmyadmin
lrwxr-xr-x 1 root wheel 26 Jan 2 17:46 /usr/local/www/nginx-dist/phpmyadmin -> /usr/local/www/phpMyAdmin/
创建基于cookie的身份验证所需的河豚机密,以加密cookie中的密码,你可以在网上生成秘密并粘贴如下;
#vim /usr/local/www/phpMyAdmin/config.inc.php
/**
* This is needed for cookie based authentication to encrypt password in
* cookie. Needs to be 32 chars long.
*/
$cfg['blowfish_secret'] = '$2a$07$ToE69yqEaQCoWwWCQAOULOLu8PnrHzu6lflq1v1qkCHuIa7kP6s9q'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
/**
* Servers configuration
*/
...
重新启动Nginx和PHP FPM以使更改生效。
#service nginx restart
#service php-fpm restart
如果你正在运行MySQL 8.0,则登录phpMyAdmin仪表板出现问题,请参见以下错误,注意MySQL 8.0正在使用 caching_sha2_password 而不是 mysql_native_password ,phpMyAdmin可能不理解的默认身份验证插件。
解决方法是,以root用户身份登录到MySQL,然后运行以下命令,将root用户的身份验证插件更改为,mysql_native_password
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'R00Tp@33W0rd';
重新启动MySQL,然后返回浏览器并登录到phpMyAdmin仪表板。
这就是在FreeBSD 12上用Nginx安装phpMyAdmin所需要的全部。