Get Adobe Flash player

re-Config Pure-FTPd-Mysql, php, phpMyAdmin หลังจาก Update Ubuntu 18.04

หลังจาก Update Ubuntu-18.04 และ Component อื่น ๆ จะพบปัญหาดังนี้

  1. รัน php ไม่ได้ เนื่องจาก PHP จะอัพเกรดเป็น 7.2 และยังไม่ enable *
  2. ไม่สามารถใช้ FTP ได้ เนื่องจาก pure-ftpd-mysql ไฟล์ config เดิมหาย *
  3. phpMyAdmin มีแจ้งเตือน error เนื่องจาก code ยังไม่ compatible กับ PHP 7.2
  4. ไม่สามารถใช้ .htaccess เนื่องจากยังไม่ AllowOverRide All ใน apache config

* สำคัญมากต้องรีบทำ เพราะมีผลต่อความปลอดภัย และการใช้งานเว็บไซต์

 

1. Enable PHP module ใน Apache

ข้อสังเกตคือ เมื่อเข้าเว็บไซต์จะพบว่าไม่รัน PHP แต่จะแสดง Code PHP ออกมาทางหน้าเว็บไซต์แทน (อันตรายมาก) วิธีการ Enable PHP ใช้คำสั่ง a2enmod (Apache2 Enable Module) เพื่อ enable PHP 7.2 จากนั้นให้ Restart Service Apache

จากนั้นลองเข้าเว็บไซต์ตรวจสอบว่าสามารถรัน PHP ได้เป็นปกติ

 

2. Re-Config pure-ftpd-mysql

ข้อสังเกตคือ จะไม่สามารถ Login เข้า FTP ได้ จะต้องแก้ไข Config pure-ftpd-mysql ใหม่ เริ่มต้นให้เข้า phpMyAdmin เพื่อตั้งค่า User pureftpd ใหม่

ไม่แน่ใจว่าใช้ pureftpd@localhost.localdomain ด้วยหรือไม่ ให้ Reset และ Gen-Passwordใหม่ และนำไปใช้ทั้ง 2 user นี้ได้เลย

เมื่อแก้ Password เสร็จ ให้ทำการเปลี่ยนชื่อ Table ใน Datebase pureftpd ด้วย จาก ftpd เป็น users (เพราะ  pure-ftpd รุ่นใหม่มีการเปลี่ยนชื่อ table ใน config)

จากนั้นให้ ssh(putty) ไปที่ Server และทำการแก้ไข Config ที่ไฟล์ /etc/pure-ftpd/db/mysql.conf โดยจุดที่ต้องแก้คือ

  • MYSQLUser = pureftpd
  • MYSQLPassword = รหัสผ่านใหม่ (ของเดิมหายไปพร้อมกับ Config file)
  • MYSQLCrypt = md5

แล้วทำการ Restart Service pure-ftpd-mysql ด้วยคำสั่ง ทดลอง Login FTP จะต้องสามารถ Login ได้ตามปกติ

 

3. แก้ไข Error phpMyAdmin

Error นั้นอาจจะไม่เหมือนกันในแต่ละเครื่อง อยู่ที่คนอัพเดท Ubuntu ว่าตั้งค่าอะไรไว้บ้าง สามารถแบ่ง Error ได้ดังนี้

  • 3.1 Error Mysql Connect phpmyadmin@localhost Password Yes
  • 3.2 Error “Warning in ./libraries/sql.lib.php#613 count(): Parameter must be an array or an object that implements Countable”
  • 3.3 Blowfish too short

 

3.1 Error Mysql Connect phpmyadmin@localhost Password Yes

แก้ไข Config PHP file ที่ /etc/phpmyadmin/config-db.php โดยการลบให้ตัวแปร $dbuser, $dbpass เป็น string เปล่า ๆ ดังนี้

 

3.2 Error “Warning in ./libraries/sql.lib.php#613 count(): Parameter must be an array or an object that implements Countable”

แก้ไข PHP file ที่ /usr/share/phpmyadmin/libraries/sql.lib.php ในบรรทัดที่ 613 โดยเปลี่ยนจาก

 

3.3 Blowfish too short

แก้ไข PHP file ที่ /var/lib/phpmyadmin/blowfish_secret.inc.php โดยการเพิ่มความยาวให้ตัวแปร $cfg[‘blow_secret’] โดยการแทรก Random String ที่เป็น 0-9, A-Z, a-z เพิ่ม ให้เกิน 32 ตัวอักษร ตัวอย่างเช่น

ในแต่ละ Error ของ phpMyAdmin นั้นเมื่อแก้ไขเสร็จให้ลองเข้าตรวจสอบดู Error นั้นจะทยอยหายไป

 

4. Config ให้สามารถใช้ .htaccess ได้โดยการกำหนด AllowOverride All

ข้อสังเกตคือหน้าเว็บ WordPress ที่มีการใช้ Permalink เป็นชื่อ (ต้องใช้ .htaccess) จะไม่สามารถเปิดหน้านั้นได้ แก้ไขที่ไฟล์ Config  /etc/apache2/apache2.conf จากนั้นแก้ไข AllowOverride จาก None เป็น All ใน Directory /var/www ดังภาพ

แล้วสั่ง restart service apache2 ด้วยคำสั่ง

 

Leave a Reply

Your email address will not be published. Required fields are marked *