1. 준비:
1. mysql의 루트 계정이 비어 있는 경우 루트 비밀번호를 설정해야 합니다
CentOS에 기본적으로 설치되는 mysql 서버 내부 루트 계정의 기본 비밀번호는 비어있습니다. 먼저 루트 비밀번호를 설정해주세요
#mysqladmin -u 루트 비밀번호 yourpassword
*참고: phpmyadmin은 일부 특수 구성을 통해 빈 비밀번호 로그인을 허용할 수 있지만 이는 특히 공용 네트워크 서버의 경우 권장되지 않습니다.
2. session.save_path를 올바르게 구성하도록 php.ini를 설정하세요
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
2. phpmyadmin 설치 및 구성
1. phpmyadmin에 다운로드하여 압축을 풉니다
공식 다운로드 페이지: http://www.phpmyadmin.net/home_page/downloads.php
(중국 사용자는 모든 언어 버전을 다운로드하도록 선택해야 합니다)
다운로드가 완료된 후 압축을 풀어주세요:
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
#vi config.inc.php
내부용 비밀키 설정(내부 암호화 관련, 페이지 로그인과 직접적인 관련 없음)
$cfg['blowfish_secret'] = ‘www.tudaxia.com';
3. 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을 테스트하세요.
4. 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은 몇 초 만에 즉시 다시 열렸습니다.