Nginx服务器上安装并配置PHPMyAdmin的教程


Posted in PHP onAugust 18, 2015

一、 准备工作:

1. 如果mysql的root账号为空,需要设置root密码
CentOS下默认安装的mysql服务器,里面的root账号默认密码为空,首先为root设置一个密码
#mysqladmin -u root password yourpassword

*注: 虽然通过一些特殊配置,可以使phpmyadmin允许空密码登录,但是不推荐这样做,尤其是公网的服务器。

2. 设置php.ini正确配置session.save_path

1). 首先检查php.ini配置文件

#grep session.save_path /etc/php.ini
 

如果不存在以下设置,增加该配置。如果被注释了话,去掉注释

session.save_path = “/var/lib/php/session”

2). 查看该目录是否存在:

#ls /var/lib/php/session
如果不存在,则手工创建
#mkdir /var/lib/php/session

# 修改目录属主为nginx

chown nginx:nginx session/ -R

# 重启启动php-fpm

service php-fpm restart

二、安装配置phpmyadmin

1. 下载并解压到phpmyadmin
官方下载页面:http://www.phpmyadmin.net/home_page/downloads.php
(中文用户应该选择下载all-languages版本)

下载完成后,解压:

unzip phpMyAdmin-4.1.12-all-languages.zip

移动到相应的目录位置,并改成容易访问的名称:

mv phpMyAdmin-4.1.12-all-languages /www/phpmyadmin

2. 配置phpmyadmin

复制一份配置文件:

#cd /www/phpmyadmin
#cp config.sample.inc.php config.inc.php
配置config.inc.php
#vi config.inc.php

设置一个内部使用的秘钥(和内部加密有关,与页面登录没有直接关系)

$cfg['blowfish_secret'] = ‘www.tudaxia.com';

三、配置Nignx下的站点

vi /etc/nginx/conf.d/phpmyadmin.conf
server {
 listen 8081;
 server_name localhost;
 access_log /var/log/nginx/phpmyadmin-access.log main;

 location / {
  root /www/phpmyadmin;
  index index.php;
 }

 location ~ \.php$ {
  root /www/phpmyadmin;
  fastcgi_pass  unix:/var/run/php-fpm/php-fpm.sock;
  fastcgi_index index.php;
  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  include fastcgi_params;
 }

 location ~ /\.ht {
  deny all;
 }
}

重启nginx:

#service nginx restart

完成安装,访问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);
//  } else if (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马上又回到秒开了。

 

PHP 相关文章推荐
php注入实例
Oct 09 PHP
配置PHP使之能同时支持GIF和JPEG
Oct 09 PHP
php.ini中的php-5.2.0配置指令详解
Mar 27 PHP
PHP DataGrid 实现代码
Aug 12 PHP
PHP 中文处理技巧
Apr 25 PHP
ThinkPHP使用心得分享-上传类UploadFile的使用
May 15 PHP
PHP提交表单失败后如何保留已经填写的信息
Jun 20 PHP
PHP随机生成唯一HASH值自定义函数
Apr 20 PHP
如何把php5.3版本升级到php5.4或者php5.5
Jul 31 PHP
Yii2.0实现生成二维码功能实例
Oct 24 PHP
Thinkphp5框架简单实现钩子(Hook)行为的方法示例
Sep 03 PHP
php+layui数据表格实现数据分页渲染代码
Oct 26 PHP
详解PHP中的mb_detect_encoding函数使用方法
Aug 18 #PHP
深入讲解PHP Session及如何保持其不过期的方法
Aug 18 #PHP
php微信公众平台开发之获取用户基本信息
Aug 17 #PHP
PHP添加图片水印、压缩、剪切的封装类
Aug 17 #PHP
php中switch语句用法详解
Aug 17 #PHP
Linux系统下PHP-FPM的安装和配置教程
Aug 17 #PHP
PHP连接Nginx服务器并解析Nginx日志的方法
Aug 16 #PHP
You might like
php入门学习知识点二 PHP简单的分页过程与原理
2011/07/14 PHP
php比较多维数组中值的大小排序实现代码
2012/09/08 PHP
php实现监听事件
2013/11/06 PHP
php生成固定长度纯数字编码的方法
2015/07/09 PHP
详解PHP实现定时任务的五种方法
2016/07/25 PHP
PHP5.0 TIDY_PARSE_FILE缓冲区溢出漏洞的解决方案
2018/10/14 PHP
jQuery 追加元素的方法如append、prepend、before
2014/01/16 Javascript
jquery组件使用中遇到的问题整理及解决
2014/02/21 Javascript
Angularjs基础知识及示例汇总
2015/01/22 Javascript
原生javascript实现的ajax异步封装功能示例
2016/11/03 Javascript
原生JS仿QQ阅读点击展开、收起效果
2017/03/08 Javascript
Nodejs之TCP服务端与客户端聊天程序详解
2017/07/07 NodeJs
解决在vue项目中,发版之后,背景图片报错,路径不对的问题
2018/03/06 Javascript
vue router 通过路由来实现切换头部标题功能
2019/04/24 Javascript
node中IO以及定时器优先级详解
2019/05/10 Javascript
ES6 Promise对象的含义和基本用法分析
2019/06/14 Javascript
[02:08]什么藏在DOTA2 TI9“小紫本”里?斧王历险记告诉你!
2019/05/17 DOTA
[01:11:28]DOTA2-DPC中国联赛定级赛 RNG vs Phoenix BO3第一场 1月8日
2021/03/11 DOTA
python创建只读属性对象的方法(ReadOnlyObject)
2013/02/10 Python
对python插入数据库和生成插入sql的示例讲解
2018/11/14 Python
Python求平面内点到直线距离的实现
2020/01/19 Python
python numpy矩阵信息说明,shape,size,dtype
2020/05/22 Python
pycharm 2020.2.4 pip install Flask 报错 Error:Non-zero exit code的问题
2020/12/04 Python
css3中less实现文字长阴影(long shadow)
2020/04/24 HTML / CSS
HTML5开发动态音频图的实现
2020/07/02 HTML / CSS
加拿大时尚床上用品零售商:QE Home | Quilts Etc
2018/01/22 全球购物
Java模拟试题
2014/11/10 面试题
《纸船和风筝》教学反思
2014/02/15 职场文书
关于安全的演讲稿
2014/05/09 职场文书
城市轨道交通工程职业生涯规划书范文
2014/09/16 职场文书
八项规定自查自纠报告及整改措施
2014/10/26 职场文书
2014年局领导班子自身建设情况汇报
2014/11/21 职场文书
2016年先进教师个人事迹材料
2016/02/26 职场文书
员工工作心得体会
2019/05/07 职场文书
flex弹性布局详解
2022/03/20 HTML / CSS
Java Redisson多策略注解限流
2022/09/23 Java/Android