Part of 10306241 ระบบบริหารจัดการเว็บไซต์ (Web Content Management System)
ติดตั้ง WordPress บนเซิร์ฟเวอร์ของวิชา: จาก SSH จนได้เว็บแรก
เว็บไซต์ที่คุณใช้ทุกวันไม่ได้อยู่ในคอมพิวเตอร์ของใครสักคน มันอยู่บนเครื่องที่เปิดทิ้งไว้ตลอดเวลา รอให้คนทั้งโลกเรียกเข้ามา และงานแรกของคนทำเว็บคือทำความรู้จักเครื่องนั้นให้ได้ก่อน
ใบงานนี้จะพาคุณไปตั้งแต่การเชื่อมต่อเข้าเซิร์ฟเวอร์ของวิชาด้วย SSH ไปจนถึงมีเว็บ WordPress ของกลุ่มตัวเองที่เปิดดูได้จากอินเทอร์เน็ตจริง สิ่งที่คุณจะเจอระหว่างทางไม่ใช่แค่ขั้นตอน แต่เป็นคำถามที่คนทำเว็บต้องตอบให้ได้ทุกครั้งที่ติดตั้งระบบใหม่ — ฐานข้อมูลอยู่ที่ไหน โปรแกรมของเราคุยกับมันด้วยชื่ออะไร และใครบ้างที่มีสิทธิ์เข้ามาแก้เว็บของเรา
อ่านให้จบทีละตอน อย่าข้าม และทำตามไปพร้อมกัน แต่ละตอนจบด้วยรายการตรวจสอบสั้น ๆ ว่า "ถ้าทำถูก คุณจะเห็นอะไร" ถ้าสิ่งที่เห็นไม่ตรง ให้หยุดแก้ตรงนั้นก่อน อย่าเดินหน้าต่อ เพราะความผิดพลาดในตอนต้นจะไปโผล่เป็นอาการประหลาดในตอนท้ายเสมอ
สิ่งที่ต้องมีก่อนเริ่ม
งานนี้เป็นงานกลุ่ม แต่ละกลุ่มได้ บัญชีเดียว บนเซิร์ฟเวอร์ และทุกคนในกลุ่มใช้บัญชีนั้นร่วมกัน ก่อนเริ่มให้ตรวจว่าคุณมีของครบ 3 อย่าง
- ชื่อบัญชีของกลุ่ม — หน้าตาเป็น
studentNNเช่นstudent7ดูได้จากไฟล์รายชื่อกลุ่ม ที่ประกาศไว้ในระบบส่งงาน ถ้ายังไม่รู้ว่ากลุ่มตัวเองได้บัญชีไหน อย่าเพิ่งเริ่ม เพราะการเดาแล้วเข้าบัญชีของกลุ่มอื่นจะสร้างปัญหาให้สองกลุ่มพร้อมกัน - รหัสผ่านของบัญชีกลุ่ม — ประกาศไว้ที่เดียวกัน
- เครื่องคอมพิวเตอร์ที่ต่ออินเทอร์เน็ตได้ — Windows 10 หรือ 11 มีทุกอย่างที่ต้องใช้มาให้แล้ว ไม่ต้องลงโปรแกรมเพิ่ม (ถ้าใช้ macOS หรือ Linux ก็ใช้คำสั่งเดียวกันทุกประการ)
ห้ามต่อ VPN ของมหาวิทยาลัยขณะทำงานนี้ เซิร์ฟเวอร์ของวิชาเปิดให้เข้าถึงได้จาก อินเทอร์เน็ตทั่วไปและจากเครือข่ายภายในห้องปฏิบัติการ แต่ เข้าไม่ได้ถ้าคุณต่อผ่าน VPN ฟังดูกลับหัวกลับหาง แต่เป็นเรื่องของเส้นทางเครือข่าย ไม่ใช่เรื่องสิทธิ์ — ถ้าคุณทำงานจากบ้านให้ใช้อินเทอร์เน็ตตามปกติ ไม่ต้องเปิด VPN
ตลอดทั้งใบงานนี้ ทุกที่ที่เขียนว่า studentNN ให้แทนด้วยบัญชีของกลุ่มคุณเสมอ
อย่าคัดลอกตัวอย่างไปใช้ตรง ๆ — ตัวเลขในตัวอย่างเป็นของกลุ่มอื่น
เว็บของคุณอยู่ที่ไหน
ก่อนจะพิมพ์คำสั่งแรก ขอให้เข้าใจภาพรวมก่อน เพราะมันจะอธิบายค่าที่คุณต้องกรอกในตอนที่ 3 ซึ่งเป็นจุดที่นักศึกษาพลาดกันมากที่สุด
เซิร์ฟเวอร์ของวิชาไม่ได้รันโปรแกรมทุกอย่างปนกันในเครื่องเดียว แต่แบ่งงานออกเป็นส่วน ๆ แต่ละส่วนทำงานแยกกันและเรียกหากันด้วย ชื่อ ไม่ใช่ด้วยที่อยู่ของเครื่อง
อ่านแผนภาพนี้จากซ้ายไปขวา แล้วสังเกตสองเส้นทางที่ แยกกันคนละเส้น
เส้นบนคือเส้นทางของคนที่เปิดเว็บของคุณ เบราว์เซอร์ส่งคำขอมาที่ nginx ซึ่งส่งต่อให้ php
ที่เป็นตัวรัน WordPress จริง ๆ แล้ว WordPress ก็ไปอ่านเขียนข้อมูลกับ mysql
เส้นล่างคือเส้นทางของคุณตอนทำงาน — ssh พาคุณเข้าไปที่ไฟล์ในบ้านของกลุ่มคุณ
จุดสำคัญที่สุดของแผนภาพนี้คือ WordPress ไม่ได้ทำงานอยู่ในที่เดียวกับตอนที่คุณ ssh เข้าไป
มันอยู่คนละส่วนกัน ดังนั้นเวลา WordPress จะเรียกหาฐานข้อมูล มันต้องเรียกด้วยชื่อ mysql
ไม่ใช่ localhost และไม่ใช่ 127.0.0.1 — สองคำนั้นแปลว่า "ตัวฉันเอง" ซึ่งเป็นคนละตัวกับฐานข้อมูล
คำว่า localhost และ 127.0.0.1 มีความหมายเหมือนกันคือ "เครื่องเดียวกับที่โปรแกรมนี้กำลังรันอยู่"
ปกติในบทเรียน WordPress ทั่วอินเทอร์เน็ตจะบอกให้ใส่ localhost เพราะสมมติว่าทุกอย่างอยู่เครื่องเดียวกัน
แต่ระบบของวิชานี้แยกส่วนกัน คำตอบจึงต่างออกไป — นี่คือเหตุผลที่ต้องเข้าใจภาพรวมก่อนลงมือ
ตอนที่ 1 — เชื่อมต่อเซิร์ฟเวอร์ด้วย SSH
SSH คือวิธีมาตรฐานในการเข้าไปใช้เครื่องคอมพิวเตอร์อีกเครื่องหนึ่งผ่านเครือข่าย สิ่งที่คุณจะได้คือหน้าต่างพิมพ์คำสั่งที่ทำงานอยู่บนเซิร์ฟเวอร์ ไม่ใช่บนเครื่องคุณ ทุกคำสั่งที่พิมพ์หลังจากนี้จะมีผลกับเซิร์ฟเวอร์
เปิด Terminal (Windows 11) หรือ PowerShell (Windows 10) แล้วพิมพ์คำสั่งนี้
โดยเปลี่ยน studentNN เป็นบัญชีของกลุ่มคุณ
ssh [email protected]ครั้งแรกที่เชื่อมต่อ เครื่องจะถามให้ยืนยันตัวตนของเซิร์ฟเวอร์ ประมาณนี้
The authenticity of host 'itscidev.mju.ac.th' can't be established.
ED25519 key fingerprint is SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.
Are you sure you want to continue connecting (yes/no/[fingerprint])?พิมพ์ yes แล้วกด Enter คำถามนี้จะถามครั้งเดียวต่อหนึ่งเครื่อง เพราะหลังจากนี้เครื่องคุณ
จะจำลายนิ้วมือของเซิร์ฟเวอร์ไว้ และจะเตือนคุณถ้าวันหนึ่งมันเปลี่ยนไป — ซึ่งเป็นกลไกที่ช่วยให้รู้ว่า
คุณกำลังคุยกับเครื่องที่ถูกต้องจริง ๆ ไม่ใช่เครื่องที่ใครสวมรอยมา
จากนั้นระบบจะถามรหัสผ่าน
[email protected]'s password:ตอนพิมพ์รหัสผ่าน หน้าจอจะไม่ขยับเลย ไม่มีดอกจัน ไม่มีจุด ไม่มีอะไรทั้งนั้น นี่เป็นพฤติกรรมปกติของระบบ ไม่ใช่คีย์บอร์ดเสีย พิมพ์ให้ครบแล้วกด Enter ได้เลย
ถ้าผ่าน คุณจะเห็นบรรทัดพร้อมรับคำสั่งที่ขึ้นต้นด้วยชื่อบัญชีของกลุ่มคุณ
studentNN@itsci-web:~$รหัสผ่านนี้เป็นของ กลุ่ม ไม่ใช่ของคุณคนเดียว ห้ามเปลี่ยนรหัสผ่านด้วยคำสั่ง passwd
เพราะเพื่อนอีกสี่คนจะเข้าใช้งานไม่ได้ทันทีโดยไม่รู้สาเหตุ และ ห้ามบอกรหัสนี้กับคนนอกกลุ่ม
ใครก็ตามที่มีรหัสนี้สามารถลบงานของทั้งกลุ่มได้
ตรวจสอบตอนที่ 1 — ถ้าทำถูก คุณจะเห็นบรรทัดพร้อมรับคำสั่งที่มีชื่อบัญชีกลุ่มคุณ
และเมื่อพิมพ์ whoami แล้วกด Enter ระบบจะตอบกลับมาเป็นชื่อบัญชีเดียวกัน
whoamiตอนที่ 2 — เปิดดูข้อมูลฐานข้อมูลของกลุ่ม
WordPress เก็บทุกอย่างที่คุณเขียนไว้ในฐานข้อมูล ไม่ใช่ในไฟล์ ดังนั้นตอนติดตั้ง มันจะถามว่าฐานข้อมูลของคุณชื่ออะไร เข้าด้วยบัญชีอะไร รหัสอะไร และอยู่ที่ไหน
ข้อมูลทั้งสี่อย่างนี้ถูกเตรียมไว้ให้กลุ่มคุณแล้ว อยู่ในไฟล์ชื่อ .wp-db.cnf ในบ้านของกลุ่มคุณ
เปิดดูด้วยคำสั่ง
cat ~/.wp-db.cnfสิ่งที่คุณจะเห็นมีหน้าตาแบบนี้ (ตัวเลขและรหัสผ่านของแต่ละกลุ่มไม่เหมือนกัน)
# MySQL credentials for your WordPress site
#
# 1) Type these four values into the WordPress setup screen at
# https://itscidev.mju.ac.th/studentNN/wordpress/
#
# Database Name : wp_studentNN
# Username : studentNN
# Password : xxxxxxxxxxxxxxxxxxxx
# Database Host : mysql:3306
#
# 2) The [client] section below is for the 'mysql' command line AFTER you ssh
# into the server, where the name 'mysql' does not exist:
[client]
host=127.0.0.1
port=3306
user=studentNN
password=xxxxxxxxxxxxxxxxxxxx
database=wp_studentNNไฟล์นี้มี สองส่วน และนี่คือจุดที่ทำให้หลายคนสับสน
ส่วนบนที่เป็นคอมเมนต์ คือค่าสี่ตัวที่คุณจะเอาไปกรอกในหน้าเว็บตอนติดตั้ง WordPress
สังเกตว่า Database Host เขียนว่า mysql:3306
ส่วนล่างที่ขึ้นต้นด้วย [client] เป็นค่าสำหรับใช้กับโปรแกรม mysql บรรทัดคำสั่ง
ในกรณีที่คุณ ssh เข้ามาแล้วอยากเปิดดูฐานข้อมูลตรง ๆ ตรงนั้น host เป็น 127.0.0.1
เพราะเมื่อยืนอยู่บนเครื่องเซิร์ฟเวอร์แล้ว ชื่อ mysql ใช้ไม่ได้ — ย้อนกลับไปดูแผนภาพข้างบน
แล้วคุณจะเห็นว่าทำไม
อย่าหยิบ host=127.0.0.1 จากส่วนล่างไปกรอกในหน้าเว็บ ค่าที่ต้องกรอกคือ mysql:3306
จากส่วนบนเท่านั้น นี่เป็นความผิดพลาดที่พบบ่อยที่สุดของใบงานนี้ และอาการที่ได้คือ
หน้าจอขึ้นว่า Error establishing a database connection ซึ่งดูเหมือนระบบพัง ทั้งที่กรอกผิดช่องเดียว
ห้ามเผยแพร่รหัสผ่านฐานข้อมูลของกลุ่มออกไปไหนทั้งสิ้น ห้ามโพสต์ลงเว็บที่กำลังจะสร้าง ห้ามส่งในกลุ่มแชทรวมของหมู่เรียน ห้ามแนบในไฟล์ที่ส่งงาน และถ้าจะถ่ายภาพหน้าจอส่งให้อาจารย์ ให้ปิดบรรทัดรหัสผ่านก่อนเสมอ
ตรวจสอบตอนที่ 2 — คุณจดหรือเปิดค้างไว้ได้ครบสี่ค่า: Database Name, Username,
Password และ Database Host ที่เป็น mysql:3306
ตอนที่ 3 — ติดตั้ง WordPress
ไฟล์ของ WordPress ถูกวางไว้ให้กลุ่มคุณแล้ว แต่ยังไม่ได้ติดตั้ง — เหมือนมีกล่องโปรแกรมวางอยู่ แต่ยังไม่ได้กด Install ขั้นตอนการติดตั้งคือการบอก WordPress ว่าจะเก็บข้อมูลไว้ที่ไหน แล้วให้มันสร้างตารางของตัวเองขึ้นมาในฐานข้อมูล
เปิดเบราว์เซอร์ แล้วไปที่เว็บของกลุ่มคุณ (เปลี่ยน studentNN เป็นบัญชีกลุ่มคุณ)
https://itscidev.mju.ac.th/studentNN/wordpress/WordPress จะพาคุณไปหน้าเลือกภาษา เลือกภาษาที่กลุ่มคุณจะใช้แล้วกด Continue จากนั้นจะเจอหน้าอธิบายว่าต้องเตรียมข้อมูลอะไรบ้าง กด Let's go!
หน้าถัดไปคือหัวใจของตอนนี้ — ช่องกรอกห้าช่อง
| ช่อง | กรอกอะไร |
|---|---|
| Database Name | ค่าจากไฟล์ เช่น wp_studentNN |
| Username | ค่าจากไฟล์ เช่น studentNN |
| Password | ค่าจากไฟล์ |
| Database Host | mysql:3306 |
| Table Prefix | ปล่อยไว้ตามเดิมเป็น wp_ |
ช่อง Database Host จะมีคำว่า localhost ใส่มาให้อยู่แล้ว ต้องลบทิ้งแล้วพิมพ์
mysql:3306 แทน ถ้าปล่อยไว้ตามเดิม การติดตั้งจะล้มเหลวทันที นี่คือค่าเริ่มต้นที่ถูกสำหรับ
เซิร์ฟเวอร์ส่วนใหญ่ในโลก แต่ผิดสำหรับเซิร์ฟเวอร์ของวิชานี้
กด Submit ถ้าค่าถูกต้องทั้งหมด WordPress จะบอกว่าเชื่อมต่อฐานข้อมูลได้แล้ว และให้กด Run the installation
หน้าถัดไปเป็นการตั้งค่าเว็บและสร้างบัญชีผู้ดูแลคนแรก กรอกดังนี้
- Site Title — ใช้รูปแบบ
CMS Lab —ตามด้วยชื่อกลุ่มของคุณตามที่ประกาศไว้ ชื่อนี้จะไปปรากฏบนหัวเว็บและใช้ตรวจงาน จึงต้องตั้งให้ถูกรูปแบบ - Username — ใช้ รหัสนักศึกษาของตัวแทนกลุ่มที่เป็นคนติดตั้ง
- Password — WordPress จะสุ่มรหัสที่แข็งแรงมาให้ คัดลอกเก็บไว้ก่อนกดต่อ เพราะหน้าถัดไปจะไม่แสดงให้ดูอีก และรหัสนี้คนละตัวกับรหัส SSH
- Your Email — อีเมลของตัวแทนกลุ่ม ใช้สำหรับกู้รหัสผ่าน
- Search engine visibility — ไม่ต้องติ๊ก ปล่อยให้เว็บถูกค้นเจอได้ตามปกติ
กด Install WordPress แล้วรอสักครู่ ถ้าขึ้นคำว่า Success! แปลว่าติดตั้งเสร็จแล้ว กด Log In แล้วเข้าสู่ระบบด้วยบัญชีที่เพิ่งสร้าง
สังเกตว่าคุณเพิ่งสร้างรหัสผ่านไปแล้วสามชุดที่ไม่เกี่ยวกันเลย: รหัส SSH ของกลุ่ม,
รหัสฐานข้อมูลในไฟล์ .wp-db.cnf, และรหัสผู้ดูแล WordPress ที่เพิ่งได้มา
การแยกกันแบบนี้เป็นเรื่องปกติของระบบจริง และเป็นเหตุผลที่คนทำงานสายนี้ต้องใช้โปรแกรมจัดการรหัสผ่าน
ตรวจสอบตอนที่ 3 — คุณเข้าหน้า Dashboard ของ WordPress ได้ และเมื่อเปิด
https://itscidev.mju.ac.th/studentNN/wordpress/ ในแท็บใหม่ จะเห็นหน้าเว็บที่มีชื่อกลุ่มคุณอยู่ด้านบน
ตอนที่ 4 — ตั้งค่าเว็บหลังติดตั้ง
เว็บที่เพิ่งติดตั้งเสร็จยังใช้ค่าเริ่มต้นอยู่หลายอย่าง ตอนนี้เราจะแก้สองอย่างที่มีผลกับ หน้าตาของที่อยู่เว็บและการค้นหา
ในหน้า Dashboard เมนูด้านซ้าย ไปที่ Settings → General แล้วตรวจว่า Site Title
ถูกต้องตามรูปแบบ CMS Lab — ชื่อกลุ่ม ถ้ายังไม่ถูกให้แก้แล้วกด Save Changes
ช่อง Tagline ให้เขียนแนะนำกลุ่มสั้น ๆ หนึ่งบรรทัด
จากนั้นไปที่ Settings → Permalinks ตรงนี้คือการกำหนดว่าที่อยู่ของแต่ละโพสต์จะหน้าตาเป็นอย่างไร
ค่าเริ่มต้นจะให้ที่อยู่แบบ ?p=123 ซึ่งอ่านไม่รู้เรื่องและไม่เป็นผลดีต่อการค้นหา
ให้เลือก Post name แล้วกด Save Changes
หลังบันทึก ให้กลับไปเปิดหน้าเว็บอีกครั้งแล้วคลิกเข้าไปในโพสต์ตัวอย่างที่ WordPress สร้างไว้ ถ้าที่อยู่เปลี่ยนเป็นข้อความอ่านออกและหน้าเปิดได้ปกติ แปลว่าใช้งานได้
การตั้ง Permalinks ให้ทำงานได้ต้องอาศัยการตั้งค่าฝั่งเซิร์ฟเวอร์ด้วย ซึ่งเตรียมไว้ให้แล้ว ถ้าคลิกเข้าโพสต์แล้วเจอหน้า 404 Not Found อย่าเพิ่งแก้เอง ให้แจ้งอาจารย์พร้อมบอกชื่อบัญชีกลุ่ม
ตรวจสอบตอนที่ 4 — ชื่อเว็บถูกต้อง และคลิกเข้าโพสต์แล้วที่อยู่เป็นข้อความอ่านออก ไม่ใช่ ?p=
ตอนที่ 5 — เพิ่มสมาชิกกลุ่มเป็นผู้ใช้ WordPress
ตอนนี้เว็บของกลุ่มมีผู้ใช้อยู่คนเดียวคือคนที่ติดตั้ง ถ้าอีกสี่คนจะเข้ามาทำงานด้วย ทางที่ผิดคือบอกรหัสของคนติดตั้งให้ทุกคนใช้ร่วมกัน เพราะเมื่อมีอะไรผิดพลาด จะไม่มีทางรู้เลยว่าใครทำ และเป็นนิสัยที่จะสร้างปัญหาใหญ่เมื่อไปทำงานจริง
ทางที่ถูกคือสร้างบัญชีผู้ใช้แยกให้ทุกคน ระบบจัดการเนื้อหาทุกตัวออกแบบมาเพื่อสิ่งนี้อยู่แล้ว
ไปที่ Users → Add New แล้วกรอกให้เพื่อนทีละคน
| ช่อง | กรอกอะไร |
|---|---|
| Username | รหัสนักศึกษา ของสมาชิกคนนั้น |
| อีเมลของสมาชิกคนนั้น (ห้ามซ้ำกับคนอื่น) | |
| First Name / Last Name | ชื่อและนามสกุลจริง |
| Password | กด Generate แล้วส่งให้เจ้าตัวเปลี่ยนเองภายหลัง |
| Role | Administrator |
ช่อง Role คือหัวใจของเรื่องสิทธิ์ในระบบจัดการเนื้อหา WordPress มีบทบาทมาตรฐานห้าระดับ ตั้งแต่ Subscriber ที่อ่านได้อย่างเดียว ไปจนถึง Administrator ที่ทำได้ทุกอย่างรวมถึงลบเว็บทิ้ง ใบงานนี้ให้ทุกคนเป็น Administrator เพื่อให้ทำงานคล่องตัว แต่ในเว็บจริงคุณจะให้สิทธิ์ เท่าที่แต่ละคนต้องใช้เท่านั้น — หลักการนี้เรียกว่า least privilege และจะกลับมาเจอกันอีกในวิชานี้
เมื่อทุกคนเป็น Administrator ทุกคนจะลบโพสต์ของเพื่อน ถอดเพื่อนออกจากเว็บ หรือลบเว็บทั้งเว็บได้ ตกลงกันในกลุ่มก่อนว่าใครแก้อะไรได้บ้าง และอย่าทดลองใช้สิทธิ์ ที่ไม่ได้รับมอบหมายกับงานของเพื่อน
ตรวจสอบตอนที่ 5 — เปิดหน้า Users แล้วเห็นรายชื่อครบตามจำนวนสมาชิกกลุ่ม โดย Username ของทุกคนเป็นรหัสนักศึกษา
ตอนที่ 6 — โพสต์แรกของแต่ละคน
ขั้นสุดท้ายคือให้ ทุกคนในกลุ่ม เข้าสู่ระบบด้วยบัญชีของตัวเอง แล้วเขียนโพสต์คนละหนึ่งชิ้น โพสต์ใน WordPress ผูกกับผู้เขียนเสมอ การให้แต่ละคนเขียนด้วยบัญชีตัวเองจึงเป็นหลักฐาน การมีส่วนร่วมที่ตรวจสอบได้ ไม่ใช่แค่คำบอกเล่า
เข้าสู่ระบบที่ https://itscidev.mju.ac.th/studentNN/wordpress/wp-admin/
ด้วยบัญชีของตัวเอง แล้วไปที่ Posts → Add New
- ชื่อโพสต์ ใช้รูปแบบ
Hello fromตามด้วยรหัสนักศึกษาของคุณ - เนื้อหา อย่างน้อยสามย่อหน้า เล่าว่าคุณทำอะไรไปบ้างในใบงานนี้ เจอปัญหาอะไร และแก้อย่างไร เขียนด้วยภาษาของตัวเอง ไม่ต้องคัดลอกจากใบงาน
- ลองใช้ความสามารถของตัวแก้ไขเนื้อหาดูด้วย เช่น หัวข้อย่อย ตัวหนา รายการ หรือลิงก์
กด Publish เมื่อเสร็จ แล้วเปิดหน้าเว็บหลักเพื่อดูว่าโพสต์ขึ้นจริง
อย่าเขียนรหัสผ่านใด ๆ ลงในโพสต์ ไม่ว่าจะเป็นรหัสฐานข้อมูล รหัส SSH หรือรหัส WordPress เว็บนี้เปิดให้คนทั้งอินเทอร์เน็ตอ่านได้ และเสิร์ชเอนจินจะเก็บสำเนาไว้แม้คุณลบทีหลัง
ตรวจสอบตอนที่ 6 — เปิดหน้าแรกของเว็บโดยไม่ต้องเข้าสู่ระบบ แล้วเห็นโพสต์ครบทุกคน แต่ละโพสต์แสดงชื่อผู้เขียนเป็นคนละคนกัน
ตรวจสอบตัวเองก่อนส่ง
ไล่ทีละข้อจากเครื่องที่ ไม่ได้เข้าสู่ระบบ (ใช้หน้าต่างแบบส่วนตัวของเบราว์เซอร์) เพราะสิ่งที่อาจารย์เห็นคือสิ่งที่คนนอกเห็น ไม่ใช่สิ่งที่คุณเห็นตอนล็อกอินอยู่
- เปิด
https://itscidev.mju.ac.th/studentNN/wordpress/แล้วเว็บขึ้นปกติ ไม่มีข้อความแสดงข้อผิดพลาด - ชื่อเว็บบนหัวหน้าเป็น
CMS Lab — ชื่อกลุ่มไม่ใช่ชื่อเริ่มต้นของ WordPress - มีโพสต์ครบทุกคนในกลุ่ม ชื่อโพสต์ขึ้นต้นด้วย
Hello fromตามด้วยรหัสนักศึกษา - ชื่อผู้เขียนของแต่ละโพสต์ไม่ซ้ำกัน
- คลิกเข้าไปในโพสต์แล้วที่อยู่เป็นข้อความอ่านออก และหน้าไม่ขึ้น 404
- ไม่มีรหัสผ่านใด ๆ ปรากฏบนหน้าเว็บ
เจอปัญหาแบบนี้ให้ทำอย่างไร
หน้าจอขึ้น "Error establishing a database connection"
เกือบทุกครั้งเกิดจากค่าใดค่าหนึ่งในสี่ช่องผิด และค่าที่ผิดบ่อยที่สุดคือ Database Host
ตรวจว่าเป็น mysql:3306 จริง ๆ ไม่ใช่ localhost หรือ 127.0.0.1 จากนั้นตรวจรหัสผ่าน
ว่าคัดลอกมาครบและไม่ติดช่องว่างหรือคำว่า password= ติดมาด้วย
ssh แล้วค้าง หรือขึ้นว่าเชื่อมต่อไม่ได้
ตรวจก่อนว่าคุณเปิด VPN ของมหาวิทยาลัยอยู่หรือไม่ ถ้าเปิดอยู่ให้ปิดแล้วลองใหม่
ถ้ายังไม่ได้ ให้ลองเปิด https://itscidev.mju.ac.th/ ในเบราว์เซอร์ ถ้าเว็บเปิดได้แต่ ssh ไม่ได้
ให้แจ้งอาจารย์พร้อมข้อความผิดพลาดที่เห็น
ssh แล้วขึ้นว่า Permission denied แปลว่าชื่อบัญชีหรือรหัสผ่านไม่ถูก ตรวจจากไฟล์รายชื่อกลุ่มอีกครั้งว่ากลุ่มคุณคือบัญชีไหน และระวังว่ารหัสผ่านมีตัวพิมพ์ใหญ่พิมพ์เล็กที่ต่างกัน
เปิดเว็บแล้วเจอ 404 Not Found
ถ้าเกิดกับหน้าแรก ให้ตรวจว่าพิมพ์ที่อยู่ถูกต้องรวมถึงเครื่องหมาย / ปิดท้าย
ถ้าเกิดเฉพาะตอนคลิกเข้าโพสต์ แสดงว่าเป็นเรื่องของ Permalinks ให้แจ้งอาจารย์
จำไม่ได้ว่ากลุ่มตัวเองคือบัญชีไหน ดูจากไฟล์รายชื่อกลุ่มในประกาศของงานมอบหมาย อย่าเดา และอย่าลองเข้าบัญชีอื่น
ลืมรหัสผ่านผู้ดูแล WordPress ใช้ลิงก์ Lost your password? ที่หน้าเข้าสู่ระบบ ระบบจะส่งลิงก์ตั้งรหัสใหม่ไปที่อีเมล ที่กรอกไว้ตอนติดตั้ง ถ้าอีเมลนั้นใช้ไม่ได้ ให้แจ้งอาจารย์
สิ่งที่ต้องส่ง
ส่งตามที่กำหนดไว้ในประกาศของงานมอบหมาย โดยสิ่งที่ต้องมีอย่างน้อยคือ
- ที่อยู่เว็บของกลุ่ม —
https://itscidev.mju.ac.th/studentNN/wordpress/ - รายชื่อสมาชิกกลุ่มพร้อมรหัสนักศึกษา ตรงกับ Username ที่สร้างไว้ในเว็บ
ตัวแทนกลุ่มเป็นผู้ส่งเพียงคนเดียว แต่สมาชิกทุกคนต้องมีโพสต์ของตัวเองบนเว็บแล้วก่อนส่ง เพราะการให้คะแนนดูจากงานที่ปรากฏบนเว็บจริง ไม่ใช่จากสิ่งที่เขียนในใบส่งงาน
ใบงานถัดไปจะต่อจากจุดนี้ — เราจะไปดูเรื่องธีมและปลั๊กอิน ว่าระบบจัดการเนื้อหา แยกเนื้อหาออกจากหน้าตาของเว็บอย่างไร และทำไมการแยกกันนั้นถึงเป็นเหตุผลที่คนเลือกใช้มัน