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 将bmp图片转为jpg等其他任意格式的图片
Jun 21 PHP
php数组相加 array(“a”)+array(“b”)结果还是array(“a”)
Sep 19 PHP
php中0,null,empty,空,false,字符串关系的详细介绍
Jun 20 PHP
php打开文件fopen函数的使用说明
Jul 05 PHP
php float不四舍五入截取浮点型字符串方法总结
Oct 28 PHP
PHP PDOStatement:bindParam插入数据错误问题分析
Nov 13 PHP
让PHP显示Facebook的粉丝数量方法
Jan 08 PHP
PHP实现的汉字拼音转换和公历农历转换类及使用示例
Jul 01 PHP
主流PHP框架的优缺点对比分析
Dec 25 PHP
php与c 实现按行读取文件实例代码
Jan 03 PHP
对于Laravel 5.5核心架构的深入理解
Feb 22 PHP
PHP5.6.8连接SQL Server 2008 R2数据库常用技巧分析总结
May 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开发框架总结收藏
2008/04/24 PHP
Zend Framework教程之模型Model用法简单实例
2016/03/04 PHP
深入剖析PHP中printf()函数格式化使用
2016/05/23 PHP
php+mysql查询实现无限下级分类树输出示例
2016/10/03 PHP
解决form中action属性后面?传递参数 获取不到的问题
2017/07/21 PHP
laravel 解决Validator使用中出现的问题
2019/10/25 PHP
php多进程并发编程防止出现僵尸进程的方法分析
2020/02/28 PHP
js自带函数备忘 数组
2006/12/29 Javascript
JavaScript 面向对象的 私有成员和公开成员
2010/05/13 Javascript
js获取input标签的输入值实现代码
2013/08/05 Javascript
JavaScript的各种常见函数定义方法
2014/09/16 Javascript
轻松创建nodejs服务器(4):路由
2014/12/18 NodeJs
Javascript中String的常用方法实例分析
2015/06/13 Javascript
浅析Javascript中bind()方法的使用与实现
2016/04/29 Javascript
js实现统计字符串中特定字符出现个数的方法
2016/08/02 Javascript
AngularJS中的JSONP实例解析
2016/12/01 Javascript
详解实现一个通用的“划词高亮”在线笔记功能
2019/04/23 Javascript
Nodejs异步流程框架async的方法
2019/06/07 NodeJs
js实现双人五子棋小游戏
2020/05/28 Javascript
原生JS实现相邻月份日历
2020/10/13 Javascript
ant design中upload组件上传大文件,显示进度条进度的实例
2020/10/29 Javascript
[54:30]Liquid vs Newbee 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
浅谈python import引入不同路径下的模块
2017/07/11 Python
详解如何用OpenCV + Python 实现人脸识别
2017/10/20 Python
使用pytorch搭建AlexNet操作(微调预训练模型及手动搭建)
2020/01/18 Python
TensorFlow MNIST手写数据集的实现方法
2020/02/05 Python
python爬虫中PhantomJS加载页面的实例方法
2020/11/12 Python
一张图片能隐含千言万语之隐藏你的程序代码
2012/12/13 HTML / CSS
美国最大的珠宝商之一:Littman Jewelers
2016/11/13 全球购物
社区包粽子活动方案
2014/01/21 职场文书
大学生作弊检讨书
2014/02/19 职场文书
基层党员干部四风问题整改方向和措施
2014/09/25 职场文书
2015年社区工作总结
2015/04/08 职场文书
幼儿园保育员随笔
2015/08/14 职场文书
整理Python中常用的conda命令操作
2021/06/15 Python
使用CSS设置滚动条样式
2022/01/18 HTML / CSS