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 相关文章推荐
PHP4实际应用经验篇(3)
Oct 09 PHP
PHP mb_convert_encoding文字编码的转换函数介绍
Nov 10 PHP
mantis安装、配置和使用中的问题小结
Jul 14 PHP
实用的PHP带公钥加密类分享(每次加密结果都不一样哦)
Aug 20 PHP
PHP浮点数精度问题汇总
May 13 PHP
Zend Framework教程之响应对象的封装Zend_Controller_Response实例详解
Mar 07 PHP
thinkPHP的表达式查询用法详解
Sep 14 PHP
thinkphp框架page类与bootstrap分页(美化)
Jun 25 PHP
阿里云的WindowsServer2016上部署php+apache
Jul 17 PHP
Swoole实现异步投递task任务案例详解
Apr 02 PHP
laravel使用数据库测试注意事项
Apr 10 PHP
phpmyadmin在宝塔面板里进不去的解决方案
Jul 06 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 cron中的批处理
2008/09/16 PHP
PHP中上传多个文件的表单设计例子
2014/11/19 PHP
thinkphp循环结构用法实例
2014/11/24 PHP
Django中的cookie与session操作实例代码
2017/08/17 PHP
PHP中“=&gt;
2019/03/01 PHP
ThinkPHP5.0框架使用build 自动生成模块操作示例
2019/04/11 PHP
php远程请求CURL实例教程(爬虫、保存登录状态)
2020/12/10 PHP
国外Lightbox v2.03.3 最新版 下载
2007/10/17 Javascript
深入理解Javascript动态方法调用与参数修改的问题
2013/12/10 Javascript
使用jquery+CSS实现控制打印样式
2014/12/31 Javascript
javascript使用输出语句实现网页特效代码
2015/08/06 Javascript
JavaScript实现简单Tip提示框效果
2016/04/20 Javascript
阻止表单提交按钮多次提交的完美解决方法
2016/05/16 Javascript
js转html实体的方法
2016/09/27 Javascript
jquery pagination插件动态分页实例(Bootstrap分页)
2016/12/23 Javascript
jQuery Jsonp跨域模拟搜索引擎
2017/06/17 jQuery
bootstrap时间控件daterangepicker使用方法及各种小bug修复
2017/10/25 Javascript
Vue ElementUi同时校验多个表单(巧用new promise)
2018/06/06 Javascript
[02:49]2014DOTA2电竞也是体育项目! 势要把荣誉带回中国!
2014/07/20 DOTA
详解Python里使用正则表达式的ASCII模式
2017/11/02 Python
Python cookbook(数据结构与算法)将序列分解为单独变量的方法
2018/02/13 Python
python3 使用Opencv打开USB摄像头,配置1080P分辨率的操作
2019/12/11 Python
css3 transform过渡抖动问题解决
2020/10/23 HTML / CSS
html5 分层屏幕适配的方法
2018/03/16 HTML / CSS
Net-A-Porter美国官网:全球时尚奢侈品名站
2017/02/11 全球购物
Zalando Lounge瑞士:时尚与生活方式购物俱乐部
2020/03/12 全球购物
WEB控件及HTML服务端控件能否调用客户端方法?如果能,请解释如何调用?
2015/08/25 面试题
中英双版中文教师求职信
2013/10/27 职场文书
总经理岗位职责描述
2014/02/08 职场文书
贷款承诺书范文
2014/05/19 职场文书
2014年教师党员自我评价范文
2014/09/22 职场文书
计生办班子群众路线教育实践活动个人对照检查材料思想汇报
2014/10/04 职场文书
2014年禁毒工作总结
2014/11/24 职场文书
使用Oracle跟踪文件的问题详解
2021/06/28 Oracle
Java 泛型详解(超详细的java泛型方法解析)
2021/07/02 Java/Android
Redis RDB技术底层原理详解
2021/09/04 Redis