ຕິດຕັ້ງ Nginx ກັບ Server Blocks (Virtual Hosts) ເທິງ Debian 10


Nginx ແມ່ນເຄື່ອງແມ່ຂ່າຍເວັບໄຊຕ໌ທີ່ມີປະສິດຕິພາບສູງທີ່ມີຄວາມນິຍົມຫຼາຍເຊິ່ງລວມເອົາພະລັງຂອງການໂອນກັນຂ້າມ, ການດຸ່ນດ່ຽງການໂຫຼດ, ການເກັບຂໍ້ມູນແລະອື່ນໆ. ອີງຕາມວິທີການທີ່ມັນຖືກ ກຳ ນົດ, ມັນສາມາດເຮັດ ໜ້າ ທີ່ເປັນຕົວແທນປີ້ນກັບກັນໄດ້ເຊັ່ນດຽວກັນກັບການດຸ່ນດ່ຽງການໂຫຼດ ສຳ ລັບເຊີຟເວີ HTTP/HTTPS.

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

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

ກ່ອນທີ່ພວກເຮົາຈະເລີ່ມຕົ້ນ, ຮັບປະກັນຄວາມຕ້ອງການດັ່ງຕໍ່ໄປນີ້:

<

  • ຕົວຢ່າງຂອງ Debian 10.
  • ຊື່ໂດເມນທີ່ມີເງື່ອນໄຂເຕັມທີ່ (FQDN) ທີ່ຊີ້ໄປທີ່ເຊີບເວີ.
  • ໃນ ຄຳ ແນະ ນຳ ນີ້, ພວກເຮົາໃຊ້ໂດເມນ linux-console.net ຊີ້ໄປທີ່ລະບົບ Debian 10 ທີ່ມີທີ່ຢູ່ IP 192.168.0.104.
  • ການເຊື່ອມຕໍ່ອິນເຕີເນັດທີ່ດີ.
  • ຂັ້ນຕອນທີ 1: ປັບປຸງຖານຂໍ້ມູນການຫຸ້ມຫໍ່ Debian 10

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

    $ sudo apt update -y
    

    ຂັ້ນຕອນທີ 2: ຕິດຕັ້ງ Nginx ເທິງ Debian 10

    ເນື່ອງຈາກ Nginx ມີຢູ່ໃນຫໍສະ ໝຸດ ຂອງ Debian, ພວກເຮົາສາມາດເດີນ ໜ້າ ໄດ້ສະດວກສະບາຍແລະຕິດຕັ້ງມັນໂດຍໃຊ້ຜູ້ຈັດການຊຸດທີ່ ເໝາະ ສົມທີ່ມາພ້ອມກັບ Debian.

    $ sudo apt install nginx -y
    

    ຂັ້ນຕອນທີ 3: ການກວດສອບສະຖານະພາບຂອງ Nginx Webserver

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

    ເພື່ອກວດກາເບິ່ງສະຖານະພາບຂອງ Nginx, ປະຕິບັດ:

    $ systemctl status nginx
    

    ຖ້າເຄື່ອງແມ່ຂ່າຍເວັບ ກຳ ລັງຂື້ນແລະເຮັດວຽກຢູ່, ທ່ານຈະໄດ້ຮັບການແຈ້ງເຕືອນດ້ານລຸ່ມ.

    ຖ້າທ່ານຕ້ອງການເລີ່ມຕົ້ນເຊີບເວີເວັບໄຊທ໌ Nginx, ດຳ ເນີນການ ຄຳ ສັ່ງ.

    $ systemctl restart nginx
    

    ເພື່ອຢຸດ Nginx, ອອກຄໍາສັ່ງ.

    $ systemctl stop nginx
    

    ເພື່ອເລີ່ມຕົ້ນເຄື່ອງແມ່ຂ່າຍເວັບ, ດໍາເນີນການ.

    $ systemctl start nginx
    

    ເພື່ອຕັ້ງຄ່າເຄື່ອງແມ່ຂ່າຍເວັບໄຊຕ໌ Nginx ເພື່ອເລີ່ມຕົ້ນການເລີ່ມຕົ້ນແລ່ນ.

    $ systemctl enable nginx
    

    ຂັ້ນຕອນທີ 4: ຕັ້ງຄ່າ Firewall ເພື່ອເປີດພອດ Nginx

    ດ້ວຍການຕິດຕັ້ງແລະແລ່ນ Nginx ຢ່າງປະສົບຜົນ ສຳ ເລັດ, ພວກເຮົາ ຈຳ ເປັນຕ້ອງອະນຸຍາດໃຫ້ເຂົ້າໃຊ້ບໍລິການ, ໂດຍສະເພາະກັບຜູ້ໃຊ້ພາຍນອກ. ຖ້າທ່ານມີ UFW firewall ເປີດໃຊ້ງານ, ທ່ານ ຈຳ ເປັນຕ້ອງອະນຸຍາດໃຫ້ເຂົ້າໃຊ້ HTTP ຜ່ານ firewall.

    ເພື່ອບັນລຸເປົ້າ ໝາຍ ນີ້, ໃຫ້ປະຕິບັດ ຄຳ ສັ່ງ.

    $ sudo ufw allow 'Nginx HTTP'
    

    ຕໍ່ໄປ, ໃຫ້ໂຫຼດຄືນ firewall ເພື່ອສົ່ງຜົນຕໍ່ການປ່ຽນແປງ.

    $ sudo ufw reload
    

    ຍິ່ງໃຫຍ່, ດຽວນີ້ທ່ານສາມາດກວດສອບໄດ້ວ່າ HTTP ໄດ້ຖືກອະນຸຍາດຜ່ານ Firewall ໂດຍການເຮັດວຽກ.

    $ sudo ufw status
    

    ຈາກ snippet ຂ້າງເທິງ, ພວກເຮົາສາມາດເຫັນໄດ້ຢ່າງຈະແຈ້ງວ່າ Nginx HTTP ໄດ້ຖືກອະນຸຍາດຜ່ານ UFW firewall.

    ຂັ້ນຕອນທີ 5: ການເຂົ້າເຖິງ Nginx Web Server

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

    http://server-IP-address
    

    ນີ້ແມ່ນການຢັ້ງຢືນວ່າ Nginx ແມ່ນ ກຳ ລັງແລ່ນຢູ່.

    ຂັ້ນຕອນທີ 6: ການຕັ້ງຄ່າທ່ອນໄມ້ຂອງເຄື່ອງແມ່ຂ່າຍ Nginx ເທິງ Debian 10

    ນີ້ແມ່ນບາດກ້າວທີ່ເປັນທາງເລືອກແລະເປັນປະໂຫຍດເມື່ອທ່ານຕ້ອງການໂຮດຫລາຍໂດເມນໃນເວັບເຊີຟເວີ Nginx. ເພື່ອເຮັດວຽກນີ້, ທ່ານ ຈຳ ເປັນຕ້ອງມີຊື່ໂດເມນຊີ້ໃຫ້ກັບເຊີຟເວີ Debian ຂອງທ່ານ.

    ສຳ ລັບພາກນີ້, ພວກເຮົາຈະໃຊ້ຊື່ໂດເມນ linux-console.net ຜູ້ທີ່ເປັນ ບັນທຶກ ຖືກຊີ້ໄປທີ່ IP 192.168.0.104 ຂອງເຊີບເວີ.

    ໃນເວລາທີ່ທ່ານຊີ້ຊື່ໂດເມນໄປຫາທີ່ຢູ່ IP ຂອງເຄື່ອງແມ່ຂ່າຍຂອງທ່ານ, ຊື່ໂດເມນຈະປ່ຽນແປງໄວແລະຊີ້ໃຫ້ເຫັນເຖິງເຄື່ອງແມ່ຂ່າຍເວັບຂອງທ່ານດັ່ງທີ່ສະແດງ.

    ດຽວນີ້ສ້າງບລັອກເຊີຟເວີ.

    ກ່ອນອື່ນ ໝົດ, ໃຫ້ສ້າງທິດທາງ ສຳ ລັບໂດເມນຂອງພວກເຮົາດັ່ງທີ່ສະແດງໄວ້.

    $ sudo mkdir -p /var/www/html/linux-console.net
    

    ຫຼັງຈາກນັ້ນ, ກຳ ນົດການເປັນເຈົ້າຂອງແຟ້ມທີ່ຕ້ອງການດັ່ງທີ່ສະແດງໄວ້.

    $ sudo chown -R $USER:$USER /var/www/html/linux-console.net
    

    ຕໍ່ໄປ, ມອບ ໝາຍ ການອ່ານແລະປະຕິບັດການອະນຸຍາດໃຫ້ກຸ່ມແລະຜູ້ຊົມໃຊ້ສາທາລະນະດັ່ງທີ່ສະແດງໄວ້.

    $ sudo chmod -R 755 /var/www/html/linux-console.net
    

    ຕອນນີ້ໃຫ້ສ້າງເວັບໄຊທ໌ຕົວຢ່າງແບບງ່າຍດາຍ index.html ໂດຍໃຊ້ vim ບັນນາທິການຕົວ ໜັງ ສື.

    $ sudo vim /var/www/html/linux-console.net/index.html
    

    ຕື່ມບາງເນື້ອໃນຕົວຢ່າງໃສ່ໃນເອກະສານ. ສິ່ງນີ້ຈະຖືກສະແດງຢູ່ໃນໂປຣແກຣມທ່ອງເວັບ.

    <html>
        <head>
            <title>Welcome to Linux geeks</title>
        </head>
        <body>
            <h1>Success! Welcome to your new server block on Tecmint Nginx Web Server !</h1>
        </body>
    </html>
    

    ບັນທຶກແລະອອກຈາກບັນນາທິການ

    ເພື່ອໃຫ້ເນື້ອຫານີ້ໄດ້ຮັບການບໍລິການ, ຕ້ອງມີການສ້າງ block server.

    ໃຫ້ສ້າງບລັອກເຊີຟເວີ

    $ vim  /etc/nginx/sites-available/linux-console.net
    

    ຄັດລອກແລະວາງເນື້ອຫາຕໍ່ໄປນີ້ໃສ່ໃນເອກະສານ block server.

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

    ໃຫ້ແນ່ໃຈວ່າຈະປັບປຸງຊື່ໂດເມນ linux-console.net ດ້ວຍຊື່ໂດເມນຂອງທ່ານເອງ.

    ເພື່ອກະຕຸ້ນຫລືເປີດໃຊ້ເອກະສານ block server, ສ້າງລິ້ງສັນຍາລັກດັ່ງທີ່ສະແດງ.

    $ sudo ln -s /etc/nginx/sites-available/linux-console.net /etc/nginx/sites-enabled/
    

    ເພື່ອກວດສອບວ່າການຕັ້ງຄ່າທັງ ໝົດ ໃນ Nginx ຖືກຕັ້ງຄ່າໃຫ້ຖືກຕ້ອງ, ໃຫ້ແລ່ນ.

    $ sudo nginx -t
    

    ຍິ່ງໃຫຍ່, ພວກເຮົາດີທີ່ຈະໄປ! ສຸດທ້າຍ restart Nginx.

    $ sudo systemctl restart nginx
    

    ມຸ່ງ ໜ້າ ໄປຫາ browser ຂອງທ່ານແລະໂຫຼດຫນ້າຈໍຄືນແລະຖ້າທຸກຢ່າງ ດຳ ເນີນໄປໄດ້ດີ, ໂປແກຼມທ່ອງເວັບຄວນ ກຳ ລັງໃຫ້ບໍລິການ ໜ້າ ເວັບ block server ຂອງທ່ານດັ່ງທີ່ສະແດງໄວ້.

    ຂັ້ນຕອນທີ 7: ເຂົ້າເຖິງເອກະສານບັນທຶກ Nginx

    ໃນການເຂົ້າເຖິງເອກະສານບັນທຶກກ່ຽວກັບການຮ້ອງຂໍທີ່ເຮັດກັບເຊີບເວີຂອງທ່ານ, ເຂົ້າເບິ່ງເອກະສານຂ້າງລຸ່ມນີ້.

    $ sudo vim /var/log/nginx/access.log 
    

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

    $ sudo vim /var/log/nginx/error.log
    

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