เลือกหนึ่งในสามวิธี
ใน HELPER VPS แค่เลือกอิมเมจตอนสร้างเซิร์ฟเวอร์ ขั้นตอนเตรียม WordPress ก็ลดลงมาก เลือกวิธีที่เหมาะกับสถานการณ์ของคุณหนึ่งวิธี
- อิมเมจ WordPress: ติดตั้ง Nginx, MySQL, PHP และ WordPress บน Ubuntu 24.04 แค่ทำหน้าติดตั้งในเบราว์เซอร์ให้เสร็จก็เรียบร้อย จึงเป็นวิธีเปิดบล็อกที่เร็วที่สุด
- อิมเมจ LEMP: นำ WordPress ขึ้นเองบนเซิร์ฟเวอร์ที่เตรียม Nginx, MySQL, PHP ไว้แล้ว เหมาะเมื่อต้องการวางหลายเว็บบนเซิร์ฟเวอร์เดียว หรือกำหนดโครงสร้างโฟลเดอร์และการตั้งค่าเอง
- อิมเมจ Docker: รัน WordPress และฐานข้อมูลเป็นคอนเทนเนอร์ สะดวกเมื่อย้ายเว็บไปเซิร์ฟเวอร์อื่น หรือสร้างสภาพแวดล้อมเดิมหลายครั้ง
บล็อกเล็กเริ่มต้นด้วยแผนทั่วไปขนาดเล็ก 12GB ก็เพียงพอแล้ว ในขณะที่ร้านค้าออนไลน์หรือเว็บไซต์ที่มีผู้เข้าชมมากจะเปิดหน้าได้ลื่นขึ้นบนเซิร์ฟเวอร์ประสิทธิภาพสูง NVMe ที่มีดิสก์เร็ว คำแนะนำตามขนาดอยู่ที่หน้า WordPress VPS
เชื่อมโดเมนก่อน
หากวางแผนใช้โดเมน เชื่อมไว้ก่อนติดตั้งก็รับใบรับรอง HTTPS ได้ในครั้งเดียว สร้างสองระเบียนด้านล่างในหน้าจัดการ DNS ของที่ที่ซื้อโดเมน
- ระเบียน A: ชื่อ @ (และ www) ค่าคือที่อยู่ IPv4 ของเซิร์ฟเวอร์
- ระเบียน AAAA: ชื่อ @ (และ www) ค่าคือที่อยู่ IPv6 ของเซิร์ฟเวอร์
การกระจายระเบียนมักใช้เวลาตั้งแต่ไม่กี่นาทีถึงไม่กี่ชั่วโมง รัน ping -c 3 example.com บนเซิร์ฟเวอร์ หากแสดง IP ของเซิร์ฟเวอร์คุณแสดงว่าพร้อมแล้ว ในคำสั่งด้านล่าง ให้เปลี่ยน example.com เป็นโดเมนของคุณ
วิธีที่ 1 เริ่มทันทีด้วยอิมเมจ WordPress
- เลือกภูมิภาคและขนาดในหน้าสร้างเซิร์ฟเวอร์ แล้วเลือก WordPress จากรายการอิมเมจ
- เมื่อเซิร์ฟเวอร์เปลี่ยนเป็นกำลังทำงาน ให้เปิด
http://YOUR_SERVER_IPในเบราว์เซอร์ - เลือกภาษา แล้วกำหนดชื่อเว็บ ชื่อผู้ใช้ผู้ดูแล รหัสผ่าน และอีเมล การติดตั้งก็เสร็จ
- เข้าหน้าผู้ดูแลที่
http://YOUR_SERVER_IP/wp-admin
ตั้งรหัสผ่านผู้ดูแลให้ยาวและซับซ้อน และใช้ชื่อผู้ใช้ที่มีแต่คุณรู้แทน admin จะรับมือความพยายามล็อกอินได้ดี การเชื่อมโดเมนและ HTTPS ทำตามขั้นตอน HTTPS ด้านล่างได้เลย
วิธีที่ 2 ติดตั้งเองบนเซิร์ฟเวอร์ LEMP
อิมเมจ LEMP ติดตั้ง Nginx, MySQL, PHP-FPM ไว้แล้ว เพียงเพิ่มส่วนขยาย PHP ฐานข้อมูล และการตั้งค่าเว็บที่ WordPress ต้องใช้ อิงตาม Ubuntu 24.04 และใช้ลำดับเดียวกันบน Ubuntu และ Debian อื่น
ขั้นที่ 1 ติดตั้งส่วนขยาย PHP
apt update
apt install -y php-mysql php-curl php-gd php-mbstring php-xml php-zip php-intl php-imagick
php -v
ls /run/php/php -v แสดงเวอร์ชัน PHP ส่วน ls /run/php/ แสดงชื่อซ็อกเก็ต PHP-FPM, Ubuntu 24.04 ใช้ PHP 8.3 จึงเห็น php8.3-fpm.sock ส่วน Debian 13 ใช้ PHP 8.4 จึงเห็น php8.4-fpm.sock ใช้ชื่อนี้ตามเดิมในการตั้งค่า Nginx ด้านล่าง
ขั้นที่ 2 สร้างฐานข้อมูลและผู้ใช้
เมื่อเชื่อมต่อด้วย root แล้วรัน mysql จะเข้า MySQL ได้โดยไม่ต้องใช้รหัสผ่าน สร้างฐานข้อมูลและผู้ใช้สำหรับ WordPress โดยเฉพาะด้วยสี่บรรทัดด้านล่าง เปลี่ยนรหัสผ่านให้ยาวแล้วจดเก็บไว้
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'change_this_long_password';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;ขั้นที่ 3 ดาวน์โหลด WordPress
cd /var/www
curl -O https://wordpress.org/latest.tar.gz
tar xzf latest.tar.gz && rm latest.tar.gz
chown -R www-data:www-data /var/www/wordpressเปลี่ยนเจ้าของโฟลเดอร์เป็นผู้ใช้ของเว็บเซิร์ฟเวอร์ (www-data) หน้าติดตั้งในเบราว์เซอร์ก็จะสร้างไฟล์ตั้งค่าเอง และติดตั้งปลั๊กอินกับธีมจากหน้าผู้ดูแลได้ทันที
ขั้นที่ 4 ตั้งค่าเว็บใน Nginx
server {
listen 80;
listen [::]:80;
server_name example.com www.example.com;
root /var/www/wordpress;
index index.php;
client_max_body_size 64m;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginxหาก nginx -t แสดง syntax is ok, test is successful แสดงว่าการตั้งค่าถูกต้อง หากยังไม่มีโดเมน ให้เขียน _ ใน server_name และลบลิงก์เว็บเริ่มต้น (/etc/nginx/sites-enabled/default) ก็จะเปิดด้วยที่อยู่ IP ได้
ขั้นที่ 5 ติดตั้งให้เสร็จในเบราว์เซอร์
เปิด http://example.com จะพบหน้าติดตั้ง ใส่ชื่อฐานข้อมูล wordpress ผู้ใช้ wpuser รหัสผ่านที่ตั้งในขั้นที่ 2 และโฮสต์ localhost แล้วกำหนดชื่อเว็บและบัญชีผู้ดูแลก็เรียบร้อย
วิธีที่ 3 ติดตั้งด้วย Docker Compose
เซิร์ฟเวอร์ที่สร้างจากอิมเมจ Docker หรือเซิร์ฟเวอร์ที่ติดตั้ง Docker เอง รัน WordPress พร้อม MariaDB ได้ด้วยไฟล์เดียว เปลี่ยนรหัสผ่านทั้งสองให้ยาว
mkdir -p /opt/wordpress && cd /opt/wordpress
cat > compose.yaml <<'EOF'
services:
db:
image: mariadb:11
restart: unless-stopped
environment:
MARIADB_DATABASE: wordpress
MARIADB_USER: wpuser
MARIADB_PASSWORD: change_this_long_password
MARIADB_ROOT_PASSWORD: change_this_other_password
volumes:
- db:/var/lib/mysql
wordpress:
image: wordpress:latest
restart: unless-stopped
depends_on:
- db
ports:
- "80:80"
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: wpuser
WORDPRESS_DB_PASSWORD: change_this_long_password
WORDPRESS_DB_NAME: wordpress
volumes:
- wp:/var/www/html
volumes:
db:
wp:
EOF
docker compose up -dเปิด http://YOUR_SERVER_IP จะพบหน้าติดตั้ง ข้อมูลฐานข้อมูลอยู่ในไฟล์แล้ว จึงกำหนดเพียงชื่อเว็บและบัญชีผู้ดูแล บทความและไฟล์อัปโหลดอยู่ใน volume wp ฐานข้อมูลอยู่ใน volume db แม้เปลี่ยนคอนเทนเนอร์เป็นเวอร์ชันใหม่ก็ยังอยู่ครบ
การติด HTTPS ให้เว็บที่ขึ้นด้วย Docker วิธีที่เป็นระเบียบคือวาง reverse proxy ไว้ด้านหน้า หากใช้อิมเมจ Coolify หรือ Dokploy ที่ใส่แค่โดเมนบนหน้าจอก็ติดใบรับรองให้อัตโนมัติ จะง่ายยิ่งขึ้น
ติดใบรับรอง HTTPS
อิมเมจ WordPress และเซิร์ฟเวอร์ LEMP รับใบรับรองฟรีจาก Let's Encrypt ด้วย Certbot แล้วติดตั้งกับ Nginx ได้ทันที โดเมนต้องชี้ไปที่ IP เซิร์ฟเวอร์อยู่แล้ว
apt install -y certbot python3-certbot-nginx
certbot --nginx -d example.com -d www.example.comใส่อีเมลและยอมรับข้อตกลง ใบรับรองจะออกให้และเพิ่ม HTTPS ในการตั้งค่า Nginx ใบรับรองจะต่ออายุอัตโนมัติโดย Certbot จากนั้นในหน้าผู้ดูแล WordPress ที่ การตั้งค่า > ทั่วไป ให้เปลี่ยนที่อยู่ WordPress และที่อยู่เว็บไซต์เป็น https หากใช้ไฟร์วอลล์ ให้เปิดสองพอร์ตด้วย ufw allow 80,443/tcp
การตั้งค่าที่ควรทำหลังติดตั้ง
- ลิงก์ถาวร: เลือกแบบชื่อเรื่องที่ การตั้งค่า > ลิงก์ถาวร ที่อยู่จะอ่านง่ายขึ้น บรรทัด try_files ในการตั้งค่า Nginx ด้านบนจะจัดการที่อยู่นี้
- ขนาดอัปโหลด: หากต้องอัปโหลดรูปภาพหรือไฟล์ธีมขนาดใหญ่ ให้เพิ่ม
client_max_body_sizeของ Nginx พร้อมกับupload_max_filesize,post_max_sizeใน/etc/php/8.3/fpm/php.iniเป็นขนาดเดียวกัน แล้วรันsystemctl restart php8.3-fpm - การส่งอีเมล: อีเมลสมัครสมาชิก ลืมรหัสผ่าน และแจ้งคำสั่งซื้อ ให้เชื่อมพอร์ต 587 หรือ 465 ของบริการส่งอีเมลผ่านปลั๊กอิน SMTP วิธีอยู่ในคู่มือการส่งอีเมล
- การอัปเดต: อัปเดตตัว WordPress ปลั๊กอิน และธีมในหน้าผู้ดูแล ส่วนเซิร์ฟเวอร์ให้อัปเดตเป็นประจำด้วย
apt update && apt upgrade -y - การแบ็กอัป: บทความและฐานข้อมูลเป็นทรัพย์สินที่สร้างใหม่ไม่ได้ เปิดแบ็กอัปอัตโนมัติไว้ตอนสร้างเซิร์ฟเวอร์ หรือเก็บสำเนาด้วยวิธีในคู่มือแบ็กอัปและสแนปช็อต
เมื่อต้องการติดตั้งใหม่ตั้งแต่ต้น เลือกอิมเมจ WordPress อีกครั้งในการติดตั้งใหม่ของหน้าเซิร์ฟเวอร์ ก็จะกลับเป็นสถานะสะอาด ดิสก์จะถูกติดตั้งใหม่ จึงควรส่งออกบทความที่ต้องใช้ด้วย เครื่องมือ > ส่งออก ก่อน และดูขั้นตอนในคู่มือติดตั้งใหม่
