Install phpmyadmin on Debian 10
สิ่งที่ต้องติดตั้ง
- mariadb
- nginx
- php for nginx
- phpmyadmin
1) อัพเดท software packet และติดตั้ง wget
apt update
apt install wget
2) ติดตั้ง MariaDB เวอร์ชั่นล่าสุด
2.1 ติดตั้ง Repo เวอร์ชั่นล่าสุดของ mariadb
apt-get install software-properties-common dirmngr
apt-key adv --fetch-keys 'https://mariadb.org/mariadb_release_signing_key.asc'
add-apt-repository 'deb [arch=amd64,arm64,ppc64el] https://mirror.kku.ac.th/mariadb/repo/10.5/debian buster main'
2.2) ติดตั้ง MariaDB
apt update
apt install mariadb-server
ตั้ง password สำหรับ user root ของ mariadb
mysql_secure_installation
2.3) ติดตั้ง nginx กับ php
apt install php-{mbstring,zip,gd,xml,pear,gettext,cgi,fpm,mysql} nginx
3) โหลดโปรแกรม phpmyadmin
wget https://files.phpmyadmin.net/phpMyAdmin/5.1.0/phpMyAdmin-5.1.0-english.tar.gz
4) สร้าง directory สำหรับเก็บ phpmyadmin และแตกไฟล์ที่โหลดมาไปที่ directoy ที่สร้างไว้
mkdir /var/www/html/phpmyadmin
tar xzf phpMyAdmin-5.1.0-english.tar.gz --strip-components=1 -C /var/www/html/phpmyadmin/
5) คอนฟิก phpmyadmin
cd /var/www/html/phpmyadmin/
cp config.sample.inc.php config.inc.php
vim /var/www/html/phpmyadmin/config.inc.php
ใส่ รหัส 32 ตัวลงในไฟล์ ที่บรรทัด
$cfg['blowfish_secret'] = '';
6) เปลี่ยนเจ้าของไฟล์เป็นของ Nginx
chown -R www-data:www-data /var/www/html/phpmyadmin
7) คอนฟิก nginx กับ php-fpm
7.1 คอนฟิก nginx
vim /etc/nginx/conf.d/phpmyadmin.conf
server {
listen 80;
server_name ip-or-domain;
root /var/www/html (ที่อยู่ไฟล์ phpmyadmin);
index index.php;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ .php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+.php)(/.+)$;
include /etc/nginx/fastcgi_params;
fastcgi_pass unix:/var/run/phpmyadmin.sock(ชื่อไฟล์ php-fpm);
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_index index.php;
}
}
7.2) คอนฟิก php-fpm
vim /etc/php/7.3/fpm/pool.d/phpmyadmin.conf
[phpmyadmin]
listen = /var/run/phpmyadmin.sock
listen.backlog = 500000
rlimit_files = 500000
rlimit_core = 0
; Unix user/group of processes
user = www-data
group = www-data
listen.owner = www-data
listen.group = www-data
pm = ondemand
pm.max_children = 200
pm.process_idle_timeout = 10s
pm.max_requests = 2000
; Pass environment variables
env[HOSTNAME] = $HOSTNAME
env[PATH] = /usr/local/bin:/usr/bin:/bin
env[TMP] = /tmp
env[TMPDIR] = /tmp
env[TEMP] = /tmp
8) สั่ง Restart Nginx และ php-fpm
systemctl restart nginx
systemctl restart php7.3-fpm.service
9) เข้าหน้าเว็บ phpmyadmin โดย