Nginx服务器上安装并配置PHPMyAdmin的教程
一、准备工作:
1.如果mysql的root账号为空,需要设置root密码
CentOS下默认安装的mysql服务器,里面的root账号默认密码为空,首先为root设置一个密码
#mysqladmin-urootpasswordyourpassword
*注:虽然通过一些特殊配置,可以使phpmyadmin允许空密码登录,但是不推荐这样做,尤其是公网的服务器。
2.设置php.ini正确配置session.save_path
1).首先检查php.ini配置文件
#grepsession.save_path/etc/php.ini
如果不存在以下设置,增加该配置。如果被注释了话,去掉注释
session.save_path=“/var/lib/php/session”
2).查看该目录是否存在:
#ls/var/lib/php/session如果不存在,则手工创建
#mkdir/var/lib/php/session
#修改目录属主为nginx
chownnginx:nginxsession/-R
#重启启动php-fpm
servicephp-fpmrestart
二、安装配置phpmyadmin
1.下载并解压到phpmyadmin
官方下载页面:http://www.phpmyadmin.net/home_page/downloads.php
(中文用户应该选择下载all-languages版本)
下载完成后,解压:
unzipphpMyAdmin-4.1.12-all-languages.zip
移动到相应的目录位置,并改成容易访问的名称:
mvphpMyAdmin-4.1.12-all-languages/www/phpmyadmin
2.配置phpmyadmin
复制一份配置文件:
#cd/www/phpmyadmin #cpconfig.sample.inc.phpconfig.inc.php配置config.inc.php
#viconfig.inc.php
设置一个内部使用的秘钥(和内部加密有关,与页面登录没有直接关系)
$cfg['blowfish_secret']=‘www.tudaxia.com';
三、配置Nignx下的站点
vi/etc/nginx/conf.d/phpmyadmin.conf
server{ listen8081; server_namelocalhost; access_log/var/log/nginx/phpmyadmin-access.logmain; location/{ root/www/phpmyadmin; indexindex.php; } location~\.php${ root/www/phpmyadmin; fastcgi_passunix:/var/run/php-fpm/php-fpm.sock; fastcgi_indexindex.php; fastcgi_paramSCRIPT_FILENAME$document_root$fastcgi_script_name; includefastcgi_params; } location~/\.ht{ denyall; } }
重启nginx:
#servicenginxrestart
完成安装,访问http://yourserver:8081/,测试phpmyadmin。
四、phpmyadmin加载缓慢的解决方法
phpmyadmin4.0系列通通加载缓慢的最终原因是最近phpmyadmin的官网经常打不开,而phpmyadmin页面会自动检查官网上的程序版本更新,所以当你进入phpmyadmin管理页面点击数据库的时候phpmyadmin一直在尝试连接官网从而把整个打开过程拖得很慢。
最终的解决办法是不让phpmyadmin检查更新,找到phpmyadmin目录下version_check.php文件,具体修改如下:
if(isset($_SESSION['cache']['version_check']) &&time()<$_SESSION['cache']['version_check']['timestamp']+3600*6 ){ $save=false; $response=$_SESSION['cache']['version_check']['response']; }else{ //$save=true; //$file='http://www.phpmyadmin.net/home_page/version.json'; //if(ini_get('allow_url_fopen')){ //$response=file_get_contents($file); //}elseif(function_exists('curl_init')){ //$curl_handle=curl_init($file); //curl_setopt($curl_handle,CURLOPT_RETURNTRANSFER,1); //$response=curl_exec($curl_handle); //} }
上面代码是通过注释掉else{......}中间这段来取消phpmyadmin连接官网version.json来检查更新
修改完后phpmyadmin马上又回到秒开了。