phpMyAdmin 安裝及設定
本工作室採用的環境是 Centos7 搭配 Nginx 及 PHP 7.3 一起使用,可以直接使用 yum 方式來安裝使用,因系統預設的版本是比較老舊,官方版其實一直都在更新版本,本工作室會建議盡量採用官方新的版本來使用,此方法跟之前的做法不一樣,要使用「作曲家」套件來配合安裝版,請參考以下方式
作曲家安裝
預設是沒有安裝「作曲家」套件,所以要先安裝如有安裝過可以跳過直接看下一個步驟來操作。
cd /usr/local/bin # 將dirs更改為我們希望將composer安裝到的位置
curl -sS https://getcomposer.org/installer | php # 安裝 composer
mv composer.phar composer # 重新命名 composer
phpMyAdmin安裝
首先到 web 服務所指定的目錄下去安裝
composer create-project phpmyadmin/phpmyadmin
輸入執行會開始進行下載服務完成之後再將該目錄的權限設定成給 web 服務使用
chown -R nginx:nginx phpmyadmin
phpmyadmin 設定檔
複製預設的範例來製作設定檔
cp /var/www/html/phpmyadmin/config.sample.inc.php /var/www/html/phpmyadmin/config.inc.php
vim /var/www/html/phpmyadmin/config.inc.php
修改登入方式
修改前
$cfg['Servers'][$i]['auth_type'] = 'cookie';
修改後
$cfg['Servers'][$i]['auth_type'] = 'http';
登入之後如果出現以下此畫面的話,還要再去「www.conf 」
vim /etc/php-fpm.d/www.conf
搜尋 session.save_path
修改前
php_value[session.save_path] = /var/lib/php/fpm/session
修改後,路徑可以自行修改,並且給予該目錄只能給 web 服務使用
php_value[session.save_path] = /var/www/html/session
chown -R nginx:nginx /var/www/html/session
這樣子就安裝完成,並且可以正常登入使用。
Nginx 設定檔
服務器的設定檔
location /phpmyadmin {
# allow 192.168.1.0/24;
# deny all;
root /usr/share/nginx/html;
index index.php index.html index.htm;
location ~ ^/phpmyadmin/(.+\.php)$ {
try_files $uri =404;
root /usr/share/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html/$fastcgi_script_name;
include fastcgi_params;
}
location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/nginx/html;
}
}
location /phpMyAdmin {
rewrite ^/* /phpmyadmin last;
}
代理設定檔
location ~ ^/(phpmyadmin\.php)$ {
proxy_pass https://192.168.10.34;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503;
proxy_set_header Host $host;
proxy_set_header X-Real_IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_redirect off;
proxy_pass_header Authorization;
}
location ~* ^/(phpmyadmin\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
proxy_pass https://192.168.10.34/phpmyadmin;
}
設定完成重啟 web 服務
nginx -t
systemctl restart nginx 重啟
or
systemctl reload nginx 立即生效