ວິທີການຕິດຕັ້ງ WordPress ກັບ Nginx ໃນ Ubuntu 20.04


ໃນປະຈຸບັນນີ້, ມີຫລາຍກວ່າ 36% ຂອງເວບໄຊທ໌ທີ່ໃຊ້ໃນເວທີ WordPress, ຍ້ອນວ່າມັນແມ່ນ ໜຶ່ງ ໃນລະບົບການຈັດການເນື້ອຫາທີ່ເປີດກວ້າງທີ່ສຸດ ສຳ ລັບການສ້າງເວບໄຊທ໌ຫລື blog ໂດຍໃຊ້ຄຸນລັກສະນະທີ່ມີປະສິດທິພາບ, ການອອກແບບທີ່ສວຍງາມ, ແລະ ສຳ ຄັນທີ່ສຸດແມ່ນອິດສະຫຼະພາບ ສ້າງທຸກຢ່າງທີ່ເຈົ້າຕ້ອງການ.

ໃນບົດຂຽນນີ້, ທ່ານຈະໄດ້ຮຽນຮູ້ວິທີການຕິດຕັ້ງ WordPress ກັບ Nginx webserver ໃນ Ubuntu 20.04. ເພື່ອຕິດຕັ້ງ WordPress, ທ່ານຈະຕ້ອງຕິດຕັ້ງ LEMP stack ໃນ server 20.04 ຂອງທ່ານ, ຖ້າບໍ່ດັ່ງນັ້ນ, ເບິ່ງຄູ່ມືຂອງພວກເຮົາ:

  • ວິທີຕິດຕັ້ງ LEMP Stack ກັບ PhpMyAdmin ໃນ Ubuntu 20.04

ຕິດຕັ້ງ WordPress ໃນ Ubuntu 20.04

1. ເມື່ອທ່ານມີ LEMP stack ຢູ່ໃນສະຖານທີ່, ຍ້າຍອອກໄປຕື່ມເພື່ອດາວໂຫລດແລະຕັ້ງ WordPress ຈາກເວັບໄຊທ໌ທາງການຂອງມັນໂດຍໃຊ້ ຄຳ ສັ່ງ wget ຕໍ່ໄປນີ້.

$ wget -c http://wordpress.org/latest.tar.gz

2. ເມື່ອແພັກເກດໄດ້ ສຳ ເລັດການດາວໂຫລດ, ສະກັດເອກະສານທີ່ເກັບໄວ້ໂດຍໃຊ້ ຄຳ ສັ່ງ tar ຕາມທີ່ສະແດງໄວ້.

$ tar -xzvf latest.tar.gz

3. ດຽວນີ້ ສຳ ເນົາເນື້ອໃນຂອງແຟ້ມ wordpress ລົງໃນໂຟນເດີເວບໄຊທ໌ຂອງທ່ານ (ເຊັ່ນ: ລະຫັດ mysite.com ) ທີ່ຄວນເກັບໄວ້ພາຍໃຕ້ຮາກເອກະສານຂອງເວັບໄຊຕ໌ຂອງເວບໄຊທ໌ (/var)/www/html/), ດັ່ງທີ່ສະແດງ.

ໃຫ້ສັງເກດວ່າໃນເວລາທີ່ໃຊ້ ຄຳ ສັ່ງ cp, ລະບົບທີ່ບໍ່ມີຢູ່ກ່ອນ ໜ້າ ນີ້, ມັນຈະຖືກສ້າງຂື້ນໂດຍອັດຕະໂນມັດ.

$ ls -l
$ sudo cp -R wordpress/ /var/www/html/mysite.com
$ sudo ls -l /var/www/html/mysite.com/

4. ຕໍ່ໄປ, ກຳ ນົດສິດອະນຸຍາດທີ່ຖືກຕ້ອງໃນເວັບໄຊທ໌້ /var/www/html/mysite.com . ຜູ້ ນຳ ໃຊ້ເວັບໄຊທ໌້ແລະກຸ່ມ www-data ຄວນເປັນເຈົ້າຂອງດ້ວຍການອ່ານ, ຂຽນແລະປະຕິບັດການອະນຸຍາດ.

$ sudo chown -R www-data:www-data /var/www/html/mysite.com
$ sudo chmod -R 775 /var/www/html/mysite.com

ການສ້າງຖານຂໍ້ມູນ WordPress ສຳ ລັບເວບໄຊທ໌

5. WordPress ຮຽກຮ້ອງໃຫ້ມີຖານຂໍ້ມູນ ສຳ ລັບການເກັບຂໍ້ມູນຂອງເວບໄຊທ໌. ເພື່ອສ້າງເວັບໄຊທ໌ ສຳ ລັບເວບໄຊທ໌ຂອງທ່ານ, ເຂົ້າໃສ່ຫອຍ MariaDB ໂດຍໃຊ້ ຄຳ ສັ່ງ mysql ໂດຍໃຊ້ຕົວເລືອກ -u ເພື່ອໃຫ້ຊື່ຜູ້ໃຊ້ແລະ -p ສຳ ລັບ ລະຫັດຜ່ານແລະຍັງໃຊ້ sudo ຖ້າທ່ານ ກຳ ລັງເຂົ້າເຖິງເປັນຜູ້ ນຳ ໃຊ້ຖານຂໍ້ມູນຮາກ.

$ sudo mysql -u root -p 
OR
$ sudo mysql -u root		#this also works for root database user

6. ເມື່ອທ່ານເຂົ້າໄປໃຊ້ຫອຍຖານຂໍ້ມູນ, ອອກ ຄຳ ສັ່ງຕໍ່ໄປນີ້ເພື່ອສ້າງຖານຂໍ້ມູນຂອງເວບໄຊທ໌, ຜູ້ໃຊ້ຖານຂໍ້ມູນແລະລະຫັດຜ່ານທີ່ສະແດງໄວ້ (ຢ່າລືມໃຊ້ຄ່າຂອງທ່ານແທນທີ່ຈະໃຊ້ "mysite", "mysiteadmin" ແລະ "email email" !”).

MariaDB [(none)]> CREATE DATABASE mysite;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON mysite.* TO 'mysiteadmin'@'localhost' IDENTIFIED BY  '[email !';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

7. ໃນຈຸດນີ້, ທ່ານ ຈຳ ເປັນຕ້ອງສ້າງເອກະສານ wp-config.php ສຳ ລັບການຕິດຕັ້ງ WordPress ໃໝ່ ຂອງທ່ານ, ເຊິ່ງທ່ານຈະ ກຳ ນົດການເຊື່ອມຕໍ່ຖານຂໍ້ມູນແລະບາງຕົວ ກຳ ນົດອື່ນໆເຊັ່ນກັນ. ຍ້າຍເຂົ້າໄປໃນເອກະສານຮາກຂອງເວັບໄຊທ໌ /var/www/html/mysite.com ແລະສ້າງແຟ້ມ wp-config.php ຈາກເອກະສານຕົວຢ່າງທີ່ໃຫ້ໄວ້ໃນຕອນຕົ້ນ

$ cd /var/www/html/mysite.com
$ sudo mv wp-config-sample.php wp-config.php

8. ຫຼັງຈາກສ້າງເອກະສານ wp-config.php , ໃຫ້ເປີດມັນເພື່ອດັດແກ້.

$ sudo vim wp-config.php

ຕອນນີ້ປັບປຸງແກ້ໄຂການຕັ້ງຄ່າການເຊື່ອມຕໍ່ຖານຂໍ້ມູນ (ຊື່ຂອງຖານຂໍ້ມູນ ສຳ ລັບ WordPress, ຊື່ຜູ້ໃຊ້ຖານຂໍ້ມູນຂອງ MariaDB, ແລະລະຫັດຜ່ານຂອງຜູ້ໃຊ້) ດັ່ງທີ່ໄດ້ສະແດງຢູ່ໃນ ໜ້າ ຈໍດັ່ງຕໍ່ໄປນີ້, ເພື່ອໃຫ້ເວບໄຊທ໌ WordPress ໃໝ່ ຂອງທ່ານເຊື່ອມຕໍ່ກັບຖານຂໍ້ມູນທີ່ທ່ານສ້າງ ສຳ ລັບມັນ.

ການສ້າງ NGINX Virtual Server Block (VirtualHost) ສຳ ລັບເວບໄຊທ໌ WordPress

9. ສຳ ລັບ NGINX ໃຫ້ບໍລິການເວັບໄຊທ໌້ຂອງທ່ານໃຫ້ກັບລູກຄ້າໂດຍໃຊ້ຊື່ໂດເມນຂອງທ່ານ (ຕົວຢ່າງ mysite.com ), ທ່ານ ຈຳ ເປັນຕ້ອງ ກຳ ຫນົດຄ່າບລັອກເຊີເວີ້ (ທີ່ຄ້າຍຄືກັນກັບ virtual host ພາຍໃຕ້ Apache) ສຳ ລັບເວັບໄຊທ໌ຂອງທ່ານໃນ NGINX ການຕັ້ງຄ່າ.

ສ້າງແຟ້ມເອກະສານທີ່ມີຊື່ວ່າ mysite.com.conf ພາຍໃຕ້ລະບົບ /etc/nginx/conf.d/ ຕາມທີ່ສະແດງ.

$ sudo vim /etc/nginx/conf.d/mysite.com.conf

ຄັດລອກແລະວາງການຕັ້ງຄ່າຕໍ່ໄປນີ້ໃນແຟ້ມ. ຢ່າລືມທີ່ຈະປ່ຽນແທນ mysite.com ແລະ www.mysite.com ດ້ວຍຊື່ໂດເມນຂອງທ່ານ.

server {
        listen 80;
        listen [::]:80;
        root /var/www/html/mysite.com;
        index  index.php index.html index.htm;
        server_name mysite.com www.mysite.com;

        error_log /var/log/nginx/mysite.com_error.log;
        access_log /var/log/nginx/mysite.com_access.log;
        
        client_max_body_size 100M;
        location / {
                try_files $uri $uri/ /index.php?$args;
        }
        location ~ \.php$ {
                include snippets/fastcgi-php.conf;
                fastcgi_pass unix:/run/php/php7.4-fpm.sock;
                fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
        }
}

ໝາຍ ເຫດ: ໃນການຕັ້ງຄ່າຂ້າງເທິງ, ຄ່າຂອງພາລາມິເຕີ fastcgi_pass ຄວນຈະຊີ້ໃຫ້ເຫັນເຕົ້າຮັບທີ່ PHP-FPM ກຳ ລັງຟັງຢູ່, ດັ່ງທີ່ໄດ້ ກຳ ນົດໂດຍຄ່າຂອງພາລາມິເຕີ ຟັງ ໃນ/etc/php/7.4/fpm/pool.d/www.conf ເອກະສານການຕັ້ງຄ່າສະລອຍນ້ ຳ. ຄ່າເລີ່ມຕົ້ນແມ່ນຊັອກເກີ້ UNIX /run/php/php7.4-fpm.sock.

10. ສຳ ຄັນ, NGINX ທຳ ມະດາຈະຍ້າຍທຸກ ຄຳ ຮຽກຮ້ອງໄປຍັງ server ເລີ່ມຕົ້ນ. ສະນັ້ນ, ກຳ ຈັດເອກະສານບລັອກເຊີຟເວີໄວ້ໃນຕອນຕົ້ນເພື່ອໃຫ້ເວັບໄຊທ໌ ໃໝ່ ຂອງທ່ານແລະເວັບໄຊທ໌ອື່ນໆທີ່ທ່ານຕັ້ງໃຈຕັ້ງໄວ້ໃນເຄື່ອງແມ່ຂ່າຍດຽວກັນທີ່ສາມາດໂຫລດໄດ້ດີ.

$ sudo rm /etc/nginx/sites-enabled/default
$ sudo rm /etc/nginx/sites-available/default

11. ຕໍ່ໄປ, ກວດເບິ່ງ syntax ການຕັ້ງຄ່າ NGINX ສຳ ລັບຂໍ້ຜິດພາດໃດໆກ່ອນທີ່ທ່ານຈະສາມາດເລີ່ມຕົ້ນບໍລິການ Nginx ເພື່ອ ນຳ ໃຊ້ການປ່ຽນແປງຂ້າງເທິງ.

$ sudo nginx -t
$ sudo systemctl restart nginx

ສຳ ເລັດການຕິດຕັ້ງ WordPress ຜ່ານ Web Installer

12. ຕໍ່ໄປ, ທ່ານ ຈຳ ເປັນຕ້ອງ ສຳ ເລັດການຕິດຕັ້ງ WordPress ໂດຍໃຊ້ຕົວຕິດຕັ້ງເວບໄຊທ໌. ເປີດເວັບບຣາວເຊີແລະໃຊ້ຊື່ໂດເມນຂອງທ່ານເພື່ອ ນຳ ທາງ:

http://mysite.com/
OR
http://SERVER_IP/

ເມື່ອຜູ້ຕິດຕັ້ງເວັບໄຊຕ໌ໂຫລດ, ເລືອກພາສາທີ່ທ່ານມັກ ສຳ ລັບຂັ້ນຕອນການຕິດຕັ້ງແລະກົດສືບຕໍ່.

13. ຫຼັງຈາກນັ້ນຕື່ມຂໍ້ມູນທີ່ຕ້ອງການກ່ຽວກັບເວັບໄຊທ໌ ໃໝ່ ຂອງທ່ານ. ນັ້ນແມ່ນຫົວຂໍ້ເວບໄຊທ໌, ຊື່ຜູ້ບໍລິຫານ, ລະຫັດຜ່ານຂອງຜູ້ໃຊ້ແລະອີເມວ. ຈາກນັ້ນກົດຕິດຕັ້ງ WordPress. ໃຫ້ສັງເກດວ່າທ່ານສາມາດແກ້ໄຂຂໍ້ມູນນີ້ໄດ້ໃນເວລາຕໍ່ມາ.

14. ຫຼັງຈາກທີ່ WordPress ຖືກຕິດຕັ້ງ ສຳ ເລັດແລ້ວ, ດຳ ເນີນການເຂົ້າເບິ່ງ dashboard ຂອງຜູ້ຄຸ້ມຄອງເວບໄຊທ໌ໂດຍການກົດປຸ່ມເຂົ້າສູ່ລະບົບດັ່ງທີ່ເນັ້ນຢູ່ ໜ້າ ຈໍຕໍ່ໄປ.

15. ຢູ່ ໜ້າ ເຂົ້າສູ່ລະບົບ admin ຂອງເວບໄຊທ໌, ໃຫ້ຊື່ຜູ້ໃຊ້ແລະລະຫັດຜ່ານຂອງທ່ານທີ່ຖືກສ້າງຂື້ນມາຂ້າງເທິງແລະກົດເຂົ້າສູ່ລະບົບ, ເພື່ອເຂົ້າເຖິງ dashboard admin ຂອງເວັບໄຊທ໌ຂອງທ່ານ.

ຊົມເຊີຍ! ທ່ານໄດ້ຕິດຕັ້ງ WordPress ລຸ້ນລ້າສຸດຢ່າງ ສຳ ເລັດຜົນກັບ NGINX ໃນ Ubuntu 20.04, ເພື່ອເລີ່ມຕົ້ນສ້າງເວັບໄຊທ໌ຫລື blog ໃໝ່ ຂອງທ່ານ.

ເພື່ອ ດຳ ເນີນການເວັບໄຊທ໌ທີ່ປອດໄພ, ທ່ານ ຈຳ ເປັນຕ້ອງເປີດໃຊ້ HTTPS ໂດຍການຕິດຕັ້ງໃບຢັ້ງຢືນ SSL/TLS ສຳ ລັບການສື່ສານທີ່ຖືກເຂົ້າລະຫັດກັບລູກຄ້າ. ໃນສະພາບແວດລ້ອມການຜະລິດ, ແນະ ນຳ ໃຫ້ໃຊ້ໃບຢັ້ງຢືນ Let’s Encrypt ແມ່ນອັດຕະໂນມັດ, ເປີດແລະໄວ້ວາງໃຈໂດຍສ່ວນໃຫຍ່ຖ້າບໍ່ແມ່ນໂປແກຼມທ່ອງເວັບທີ່ທັນສະ ໄໝ. ອີກທາງເລືອກ ໜຶ່ງ, ທ່ານສາມາດຊື້ເຄື່ອງ ໜຶ່ງ ຈາກເຈົ້າຂອງໃບຢັ້ງຢືນການຄ້າ (CA).