ວິທີຕິດຕັ້ງ Nginx Web Server ໃນ Ubuntu 20.04


Nginx ແມ່ນແຫຼ່ງເປີດເວບໄຊທ໌, ເຊີເວີ້ທີ່ມີປະສິດຕິພາບສູງທີ່ສັ່ງແບ່ງປັນສ່ວນແບ່ງຕະຫລາດໃນສະພາບແວດລ້ອມການຜະລິດ. ມັນແມ່ນເຄື່ອງແມ່ຂ່າຍເວັບທີ່ມີນ້ ຳ ໜັກ ເບົາແລະແຂງແຮງເຊິ່ງສ່ວນຫຼາຍແມ່ນໃຊ້ໃນການເປັນເຈົ້າພາບເວບໄຊທ໌ທີ່ມີການຈະລາຈອນສູງ.

ອ່ານທີ່ກ່ຽວຂ້ອງ: ວິທີການຕິດຕັ້ງ Apache Web Server ໃນ Ubuntu 20.04

ໃນ ຄຳ ແນະ ນຳ ນີ້, ທ່ານຈະໄດ້ຮຽນຮູ້ວິທີການຕິດຕັ້ງ Nginx web server ແລະ ກຳ ຫນົດຄ່າ Nginx server block (virtual hosts) ໃນ Ubuntu 20.04 LTS.

ເພື່ອເລີ່ມຕົ້ນ, ຮັບປະກັນວ່າທ່ານມີຕົວຢ່າງຂອງ Ubuntu 20.04 LTS ທີ່ມີການເຂົ້າເຖິງ SSH ແລະຜູ້ໃຊ້ Sudo ທີ່ມີສິດທິພິເສດຮາກ. ນອກຈາກນັ້ນ, ການເຊື່ອມຕໍ່ອິນເຕີເນັດທີ່ມີຄວາມ ໝັ້ນ ຄົງແມ່ນແນະ ນຳ ໃຫ້ຕິດຕັ້ງແພັກເກດ Nginx.

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

1. ກ່ອນທີ່ຈະຕິດຕັ້ງ Nginx, ປັບປຸງລາຍຊື່ຊຸດຂອງເຊີບເວີຂອງທ່ານ.

$ sudo apt update

2. ຈາກນັ້ນຕິດຕັ້ງ Nginx ໂດຍການແລ່ນ ຄຳ ສັ່ງ:

$ sudo apt install nginx

ເມື່ອໄດ້ຮັບການກະຕຸ້ນໃຫ້ສືບຕໍ່, ກົດ Y ເທິງແປ້ນພິມແລະກົດ ENTER. ການຕິດຕັ້ງຈະ ສຳ ເລັດພາຍໃນບໍ່ເທົ່າໃດວິນາທີ.

3. ດ້ວຍການຕິດຕັ້ງ Nginx ຢ່າງປະສົບຜົນ ສຳ ເລັດ, ທ່ານສາມາດເລີ່ມຕົ້ນແລະພິສູດມັນໂດຍການເຮັດວຽກ:

$ sudo systemctl start nginx
$ sudo systemctl status nginx

ຜົນໄດ້ຮັບຂ້າງເທິງຊີ້ໃຫ້ເຫັນຢ່າງຊັດເຈນວ່າ Nginx ກຳ ລັງແລ່ນຢູ່.

4. ເພື່ອກວດເບິ່ງເວີຊັນ Nginx, ແລ່ນ:

$ sudo dpkg -l nginx

ຜົນໄດ້ຮັບຊີ້ໃຫ້ເຫັນວ່າພວກເຮົາ ກຳ ລັງໃຊ້ Nginx 1.17.10 ເຊິ່ງເປັນລຸ້ນ ໃໝ່ ຫຼ້າສຸດໃນເວລາລົງໂທດບົດຂຽນນີ້.

ເປີດພອດ Nginx ຢູ່ໃນ UFW Firewall

ໃນປັດຈຸບັນທີ່ທ່ານໄດ້ຕິດຕັ້ງແລະເຮັດວຽກຕາມ Nginx ແລ້ວ, ຕ້ອງມີການດັດປັບ ຈຳ ນວນ ໜຶ່ງ ເພື່ອໃຫ້ Nginx ສາມາດເຂົ້າເຖິງໄດ້ຜ່ານ web browser ຖ້າທ່ານ ກຳ ລັງໃຊ້ງານ UFW firewall, ທ່ານ ຈຳ ເປັນຕ້ອງອະນຸຍາດໂປຣໄຟລ໌ Nginx application.

ມີ 3 ໂປຣໄຟລ໌ Nginx ທີ່ກ່ຽວຂ້ອງກັບ ufw firewall.

<

  • Nginx ເຕັມ - ສິ່ງນີ້ຈະເປີດທັງພອດ 80 & 443 (ສຳ ລັບການເຂົ້າລະຫັດ SSL/TLS).
  • Nginx HTTP - ນີ້ເປີດພຽງພອດ 80 (ສຳ ລັບການເຂົ້າຊົມເວັບທີ່ບໍ່ເຂົ້າລະຫັດ).
  • Nginx HTTPS - ເປີດທີ່ Port ພຽງແຕ່ 443 (ສຳ ລັບການເຂົ້າລະຫັດ SSL/TLS).
  • 5. ເລີ່ມຕົ້ນໂດຍການເປີດໃຊ້ Firewall ໃນ Ubuntu 20.04.

    $ sudo ufw enable
    

    6. ສຳ ລັບດຽວນີ້, ເນື່ອງຈາກວ່າພວກເຮົາບໍ່ຢູ່ໃນເຊີບເວີທີ່ຖືກເຂົ້າລະຫັດ, ພວກເຮົາຈະອະນຸຍາດພຽງແຕ່ໂປຣໄຟລ໌ Nginx HTTP ເທົ່ານັ້ນທີ່ຈະຊ່ວຍໃຫ້ການຈະລາຈອນຢູ່ໃນ port 80.

    $ sudo ufw allow 'Nginx HTTP'
    

    7. ຫຼັງຈາກນັ້ນໃຫ້ໂຫລດ firewall ຄືນ ໃໝ່ ເພື່ອການປ່ຽນແປງທີ່ຈະຄົງຕົວ.

    $ sudo ufw reload
    

    8. ຕອນນີ້ກວດເບິ່ງສະຖານະພາບຂອງ firewall ເພື່ອກວດສອບໂປຼໄຟລ໌ທີ່ຖືກອະນຸຍາດ.

    $ sudo ufw status
    

    ການທົດສອບ Nginx ໃນ Ubuntu 20.04

    Nginx ແລ່ນຢູ່ໃນ browser ໂດຍທີ່ທ່ານຄາດຫວັງກັບເຄື່ອງແມ່ຂ່າຍເວັບໃດໆແລະວິທີທີ່ແນ່ນອນທີ່ສຸດທີ່ຈະທົດສອບຖ້າມັນ ກຳ ລັງແລ່ນຕາມທີ່ຄາດວ່າຈະສົ່ງ ຄຳ ຂໍຜ່ານ browser.

    9. ສະນັ້ນຫົວ ໜ້າ browser ຂອງທ່ານແລະທ່ອງທີ່ຢູ່ IP ຂອງ server ຫຼືຊື່ໂດເມນ. ເພື່ອກວດສອບ IP ຂອງເຊີບເວີຂອງທ່ານ, ໃຫ້ໃຊ້ ຄຳ ສັ່ງ ifconfig:

    $ ifconfig
    

    10. ຖ້າທ່ານຢູ່ໃນເຄື່ອງແມ່ຂ່າຍຟັງ, ໃຫ້ແລ່ນ ຄຳ ສັ່ງ curl ດ້ານລຸ່ມເພື່ອດຶງ IP ສາທາລະນະຂອງເຊີບເວີ.

    $ curl ifconfig.me
    

    11. ຢູ່ພາກສະ ໜາມ URL ຂອງໂປແກຼມທ່ອງເວັບຂອງທ່ານ, ໃສ່ທີ່ຢູ່ IP ຂອງເຄື່ອງແມ່ຂ່າຍຂອງທ່ານຫຼືຊື່ໂດເມນແລະກົດ ENTER.

    http://server-IP or domain-name
    

    ທ່ານຄວນຈະໄດ້ຮັບ ໜ້າ ຍິນດີຕ້ອນຮັບແບບ Nginx ແບບເດີມຄືດັ່ງທີ່ສະແດງໄວ້.

    ຈັດການ Nginx Process ໃນ Ubuntu 20.04

    12. ເພື່ອຢຸດເຄື່ອງແມ່ຂ່າຍເວັບໄຊຕ໌ Nginx, ພຽງແຕ່ ດຳ ເນີນການ:

    $ sudo systemctl stop nginx
    

    13

    $ sudo systemctl start nginx
    

    14. ເພື່ອເລີ່ມ Nginx ໂດຍອັດຕະໂນມັດໃນການ boot ຫຼື reboot run:

    $ sudo systemctl enable nginx
    

    ຖ້າທ່ານຕ້ອງການເລີ່ມຕົ້ນ webserver ໂດຍສະເພາະຫຼັງຈາກເຮັດການປ່ຽນແປງແຟ້ມການຕັ້ງຄ່າ, ໃຫ້ແລ່ນ:

    $ sudo systemctl restart nginx
    

    16. ອີກທາງເລືອກ ໜຶ່ງ, ທ່ານສາມາດໂຫຼດ ໃໝ່ ເພື່ອຫຼີກລ່ຽງການລຸດການເຊື່ອມຕໍ່ຕາມທີ່ສະແດງ.

    $ sudo systemctl reload nginx
    

    ການຕັ້ງຄ່າບລັອກເຊີເວີ Nginx ໃນ Ubuntu 20.04

    ຖ້າທ່ານກໍາລັງວາງແຜນທີ່ຈະເປັນເຈົ້າພາບຫຼາຍກວ່າ ໜຶ່ງ ເວັບໄຊທ໌້ໃນເຄື່ອງແມ່ຂ່າຍຂອງທ່ານ, ຫຼັງຈາກນັ້ນການຕັ້ງຄ່າບລັອກເຊີເວີ Nginx ມາເປັນການແນະ ນຳ ສູງ. ບລັອກຂອງເຄື່ອງແມ່ຂ່າຍແມ່ນທຽບເທົ່າຂອງໂຮດ virtual ຂອງ Apache.

    ໂດຍຄ່າເລີ່ມຕົ້ນ, ເຮືອສິນຄ້າ Nginx ພ້ອມດ້ວຍບລັອກເຊີຟເວີເລີ່ມຕົ້ນເຊິ່ງຕັ້ງໄວ້ເພື່ອຮັບໃຊ້ເນື້ອຫາຂອງເວບໄຊທ໌ທີ່ເສັ້ນທາງ /var/www/html .

    ພວກເຮົາກໍາລັງຈະສ້າງບລັອກ Nginx ແຍກຕ່າງຫາກເພື່ອຮັບໃຊ້ເນື້ອຫາຂອງໂດເມນຂອງພວກເຮົາ. ສຳ ລັບ ຄຳ ແນະ ນຳ ນີ້, ພວກເຮົາ ກຳ ລັງໃຊ້ໂດເມນ crazytechgeek.info .
    ສຳ ລັບກໍລະນີຂອງທ່ານ, ຮັບປະກັນໃຫ້ທ່ານທົດແທນສິ່ງນີ້ດ້ວຍຊື່ໂດເມນຂອງທ່ານເອງ.

    17. ເພື່ອສ້າງເອກະສານບລັອກເຊີຟເວີ, ທຳ ອິດ, ສ້າງໄດເລກະທໍລີ ສຳ ລັບໂດເມນຂອງທ່ານດັ່ງທີ່ສະແດງໄວ້.

    $ sudo mkdir -p /var/www/crazytechgeek.info/html
    

    18. ຕໍ່ໄປ, ກຳ ຫນົດຄວາມເປັນເຈົ້າຂອງເຂົ້າໃນໄດເລກະທໍລີ ໃໝ່ ໂດຍໃຊ້ຕົວປ່ຽນ $ USER .

    $ sudo chown -R $USER:$USER /var/www/crazytechgeek.info/html
    

    19. ຮັບປະກັນວ່າທ່ານຍັງໄດ້ມອບສິດອະນຸຍາດໃຫ້ໄດເລກະທໍລີຕາມຄວາມ ເໝາະ ສົມໃຫ້ເຈົ້າຂອງເຮືອນມີສິດທັງ ໝົດ (ອ່ານ, ຂຽນແລະປະຕິບັດ) ແລະອະນຸຍາດໃຫ້ພາກສ່ວນອື່ນອະນຸຍາດໃຫ້ອ່ານແລະປະຕິບັດການອະນຸຍາດເທົ່ານັ້ນ.

    $ sudo chmod -R 755 /var/www/crazytechgeek.info
    

    20. ພາຍໃນໄດເລກະທໍລີໂດເມນ, ສ້າງ index.html ເອກະສານທີ່ຈະບັນຈຸເນື້ອໃນເວັບຂອງໂດເມນ.

    $ sudo vim /var/www/crazytechgeek.info/html/index.html
    

    ໃສ່ເນື້ອໃນຂ້າງລຸ່ມນີ້ໃສ່ເອກະສານທົດລອງຕົວຢ່າງ.

    <html>
        <head>
            <title>Welcome to your_domain!</title>
        </head>
        <body>
            <h1>Bravo! Your server block is working as expected!</h1>
        </body>
    </html>
    

    ບັນທຶກການປ່ຽນແປງແລະອອກຈາກແຟ້ມ.

    21. ສຳ ລັບ Nginx webserver ເພື່ອຮັບໃຊ້ເນື້ອຫາທີ່ທ່ານຫາກໍ່ເພີ່ມ, ທ່ານຕ້ອງສ້າງ block server ໂດຍມີທິດທາງທີ່ ເໝາະ ສົມ. ໃນກໍລະນີນີ້, ພວກເຮົາໄດ້ສ້າງບລັອກເຊີຟເວີ ໃໝ່ ທີ່:

    $ sudo vim /etc/nginx/sites-available/crazytechgeek.info
    

    ວາງການຕັ້ງຄ່າທີ່ສະແດງໄວ້.

    server {
            listen 80;
            listen [::]:80;
    
            root /var/www/crazytechgeek.info/html;
            index index.html index.htm index.nginx-debian.html;
    
            server_name crazytechgeek.info  www.crazytechgeek.info;
    
            location / {
                    try_files $uri $uri/ =404;
            }
    }
    

    ບັນທຶກແລະອອກໄປ.

    22. ຕອນນີ້ເປີດໃຊ້ເອກະສານບລັອກເຊີຟເວີໂດຍການເຊື່ອມໂຍງມັນກັບເວັບໄຊທ໌ທີ່ສາມາດໃຊ້ງານໄດ້ຈາກເວບໄຊທ໌ Nginx ທີ່ເລີ່ມອ່ານ.

    $ sudo ln -s /etc/nginx/sites-available/crazytechgeek.info /etc/nginx/sites-enabled/
    

    23. ສຳ ລັບການປ່ຽນແປງທີ່ຈະມີຜົນ, ເລີ່ມຕົ້ນ ໃໝ່ ຂອງ Nginx webserver.

    $ sudo systemctl restart nginx
    

    ພຽງແຕ່ເພື່ອໃຫ້ແນ່ໃຈວ່າການຕັ້ງຄ່າທັງ ໝົດ ແມ່ນຢູ່ໃນລະບຽບ, ໃຫ້ ດຳ ເນີນການ ຄຳ ສັ່ງ:

    $ nginx -t
    

    ຖ້າການຕັ້ງຄ່າທັງ ໝົດ ຢູ່ໃນລະບຽບ, ທ່ານຄວນໄດ້ຮັບຜົນຜະລິດທີ່ສະແດງຢູ່ດ້ານລຸ່ມ:

    25. ເຄື່ອງແມ່ຂ່າຍເວັບໄຊຕ໌ Nginx ດຽວນີ້ຄວນຮັບໃຊ້ເນື້ອຫາຂອງໂດເມນຂອງທ່ານ. ອີກເທື່ອ ໜຶ່ງ, ຈົ່ງອອກໄປຫາ browser ຂອງທ່ານແລະຊອກຫາໂດເມນຂອງເຊີບເວີຂອງທ່ານ.

    http://domain-name
    

    ເນື້ອຫາທີ່ ກຳ ຫນົດເອງໃນໄດເລກະທໍລີໂດເມນຂອງທ່ານຈະຖືກ ນຳ ໃຊ້ຕາມທີ່ສະແດງ.

    ເອກະສານການຕັ້ງຄ່າ Nginx ທີ່ ສຳ ຄັນ

    ກ່ອນທີ່ພວກເຮົາຈະຫໍ່, ມັນເປັນສິ່ງ ສຳ ຄັນທີ່ພວກເຮົາກວດເບິ່ງບາງເອກະສານການຕັ້ງຄ່າທີ່ ສຳ ຄັນທີ່ກ່ຽວຂ້ອງກັບ Nginx.

    • /etc/nginx/nginx.conf: ນີ້ແມ່ນເອກະສານການຕັ້ງຄ່າຕົ້ນຕໍ. ທ່ານສາມາດດັດແປງການຕັ້ງຄ່າໃຫ້ ເໝາະ ສົມກັບຄວາມຕ້ອງການຂອງເຊີບເວີຂອງທ່ານ.
    • /etc/nginx/sites-available: ນີ້ແມ່ນໄດເລກະທໍລີທີ່ເກັບຄ່າການຕັ້ງຄ່າບລັອກເຊີຟເວີ. Nginx ໃຊ້ພຽງແຕ່ທ່ອນໄຟຂອງເຄື່ອງແມ່ຂ່າຍຖ້າພວກມັນເຊື່ອມໂຍງກັບເວັບໄຊທ໌້ທີ່ສາມາດໃຊ້ງານໄດ້.
    • /etc/nginx/sites-enabled: ໄດເລກະທໍລີມີບັນດາເຊີບເວີ Nginx ທີ່ໃຊ້ຕໍ່ ໜ້າ ເວັບທີ່ຖືກເປີດໃຊ້ງານແລ້ວ.

    ມີສອງໄຟລ໌ບັນທຶກຕົ້ນຕໍທີ່ທ່ານສາມາດໃຊ້ເພື່ອແກ້ໄຂບັນຫາເຄື່ອງແມ່ຂ່າຍເວັບໄຊຕ໌ Nginx ຂອງທ່ານ:

    • /var/log/nginx/access.log: ບັນທຶກທຸກ ຄຳ ຮ້ອງຂໍທີ່ເຮັດໃຫ້ກັບ webserver.
    • /var/log/nginx/error.log: ນີ້ແມ່ນເອກະສານບັນທຶກຂໍ້ຜິດພາດແລະມັນບັນທຶກຂໍ້ຜິດພາດທັງ ໝົດ ທີ່ Nginx ພົບ.

    ພວກເຮົາໄດ້ເຖິງຈຸດຈົບຂອງບົດສອນນີ້ແລ້ວ. ພວກເຮົາໄດ້ສະແດງວິທີທີ່ທ່ານສາມາດຕິດຕັ້ງ Nginx ໃນ Ubuntu 20.04 ແລະວິທີທີ່ທ່ານສາມາດຕັ້ງຄ່າເຄື່ອງແມ່ຂ່າຍ Nginx ເພື່ອຮັບໃຊ້ເນື້ອຫາຂອງໂດເມນຂອງທ່ານ. ຄຳ ເຫັນຂອງທ່ານແມ່ນຍິນດີຕ້ອນຮັບ.