Android

วิธีการติดตั้ง nginx บน centos 7

РЕЗИНА812

РЕЗИНА812

สารบัญ:

Anonim

เอ็นจิ้นเด่นชัดเอ็นจิ้ง engine x เป็น HTTP แบบโอเพนซอร์สที่มีประสิทธิภาพสูงและพร็อกซีเซิร์ฟเวอร์ย้อนกลับที่รับผิดชอบในการจัดการโหลดไซต์ที่ใหญ่ที่สุดบนอินเทอร์เน็ตบางแห่ง

Nginx สามารถใช้เป็นเว็บเซิร์ฟเวอร์แบบสแตนด์อโลนและเป็น reverse proxy สำหรับ Apache และเว็บเซิร์ฟเวอร์อื่น ๆ

เมื่อเปรียบเทียบกับ Apache แล้ว Nginx สามารถจัดการการเชื่อมต่อพร้อมกันจำนวนมากและมีหน่วยความจำขนาดเล็กกว่าต่อการเชื่อมต่อ

บทช่วยสอนนี้จะสอนวิธีการติดตั้งและจัดการ Nginx บนเครื่อง CentOS 7 ของคุณ

ข้อกำหนดเบื้องต้น

ก่อนที่จะเริ่มด้วยการสอนให้แน่ใจว่าคุณเข้าสู่ระบบในฐานะผู้ใช้ที่มีสิทธิ์ sudo และคุณไม่มี Apache หรือบริการอื่น ๆ ที่ทำงานบนพอร์ต 80 หรือ 443

การติดตั้ง Nginx บน CentOS

ทำตามขั้นตอนด้านล่างเพื่อติดตั้ง Nginx บนเซิร์ฟเวอร์ CentOS ของคุณ:

  1. แพคเกจ Nginx มีอยู่ในที่เก็บ EPEL หากคุณไม่มี EPEL repository ติดตั้งอยู่แล้วคุณสามารถทำได้โดยพิมพ์:

    sudo yum install epel-release

    ติดตั้ง Nginx โดยพิมพ์คำสั่ง yum ต่อไปนี้:

    sudo yum install nginx

    หากนี่เป็นครั้งแรกที่คุณติดตั้งแพคเกจจากที่เก็บ EPEL yum อาจแจ้งให้คุณนำเข้าคีย์ EPEL GPG:

    Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 Importing GPG key 0x352C64E5: Userid: "Fedora EPEL (7) " Fingerprint: 91e9 7d7c 4a5e 96f1 7f3e 888f 6a2f aea2 352c 64e5 Package: epel-release-7-9.noarch (@extras) From: /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 Is this ok: Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 Importing GPG key 0x352C64E5: Userid: "Fedora EPEL (7) " Fingerprint: 91e9 7d7c 4a5e 96f1 7f3e 888f 6a2f aea2 352c 64e5 Package: epel-release-7-9.noarch (@extras) From: /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 Is this ok:

    หากเป็นกรณีนี้ให้พิมพ์ y แล้วกด Enter

    เมื่อการติดตั้งเสร็จสมบูรณ์ให้เปิดใช้งานและเริ่มบริการ Nginx ด้วย:

    sudo systemctl enable nginx sudo systemctl start nginx

    ตรวจสอบสถานะของบริการ Nginx ด้วยคำสั่งต่อไปนี้:

    sudo systemctl status nginx

    ผลลัพธ์ควรมีลักษณะดังนี้:

    ● nginx.service - The nginx HTTP and reverse proxy server Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled) Active: active (running) since Mon 2018-03-12 16:12:48 UTC; 2s ago Process: 1677 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS) Process: 1675 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS) Process: 1673 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS) Main PID: 1680 (nginx) CGroup: /system.slice/nginx.service ├─1680 nginx: master process /usr/sbin/nginx └─1681 nginx: worker process

    หากเซิร์ฟเวอร์ของคุณได้รับการป้องกันโดยไฟร์วอลล์คุณต้องเปิดทั้งพอร์ต HTTP ( 80 ) และ HTTPS ( 443 )

    ใช้คำสั่งต่อไปนี้เพื่อเปิดพอร์ตที่จำเป็น:

    sudo firewall-cmd --permanent --zone=public --add-service=http sudo firewall-cmd --permanent --zone=public --add-service=https sudo firewall-cmd --reload

    หากต้องการตรวจสอบการติดตั้ง Nginx ของคุณให้เปิด http://YOUR_IP ในเบราว์เซอร์ที่คุณเลือกและคุณจะเห็นหน้าต้อนรับ Nginx เริ่มต้นตามที่แสดงในภาพด้านล่าง:

จัดการบริการ Nginx ด้วย systemctl

คุณสามารถจัดการบริการ Nginx ด้วยวิธีเดียวกันกับหน่วย systemd อื่น ๆ

หากต้องการหยุดบริการ Nginx ให้เรียกใช้:

sudo systemctl stop nginx

หากต้องการเริ่มใหม่อีกครั้งให้พิมพ์:

sudo systemctl start nginx

ในการรีสตาร์ทเซอร์วิส Nginx:

sudo systemctl restart nginx

โหลดบริการ Nginx อีกครั้งหลังจากที่คุณทำการเปลี่ยนแปลงการกำหนดค่า:

sudo systemctl reload nginx

sudo systemctl disable nginx

และเพื่อเปิดใช้งานอีกครั้ง:

sudo systemctl enable nginx

โครงสร้างไฟล์การกำหนดค่า Nginx และแนวทางปฏิบัติที่ดีที่สุด

  • ไฟล์กำหนดค่า Nginx ทั้งหมดอยู่ใน /etc/nginx/ directory ไฟล์กำหนดค่าหลัก Nginx คือ /etc/nginx/nginx.conf เพื่อให้การกำหนดค่า Nginx ง่ายขึ้นเพื่อรักษาแนะนำให้สร้างไฟล์การกำหนดค่าแยกต่างหากสำหรับแต่ละโดเมน ไฟล์บล็อกเซิร์ฟเวอร์ Nginx ใหม่จะต้องลงท้ายด้วย. .conf และเก็บไว้ในไดเรกทอรี /etc/nginx/conf.d คุณสามารถมีเซิร์ฟเวอร์บล็อกได้มากเท่าที่คุณต้องการมันเป็นความคิดที่ดีที่จะปฏิบัติตามหลักการตั้งชื่อมาตรฐานตัวอย่างเช่นถ้าชื่อโดเมนของคุณคือ mydomain.com ดังนั้นไฟล์การกำหนดค่าของคุณควรมีชื่อว่า /etc/nginx/conf.d/mydomain.com.conf หากคุณใช้เซกเมนต์การกำหนดค่าที่สามารถทำซ้ำได้ในบล็อกเซิร์ฟเวอร์โดเมนของคุณขอแนะนำให้สร้างไดเรกทอรีชื่อ /etc/nginx/snippets refactoring เซกเมนต์เหล่านั้นในตัวอย่างและรวมไฟล์ snippet ไปยังบล็อกไฟล์เซิร์ฟเวอร์ ( access.log และ error.log ) อยู่ในไดเรกทอรี /var/log/nginx/ ขอแนะนำให้มีไฟล์บันทึก access และ error แตกต่างกันสำหรับแต่ละเซิร์ฟเวอร์บล็อกคุณสามารถตั้งค่าไดเรกทอรีรากของเอกสารโดเมนของคุณไปยังตำแหน่งที่คุณต้องการ ตำแหน่งที่พบบ่อยที่สุดสำหรับ webroot ได้แก่:
    • /home/ / /home/ / /var/www/ /var/www/html/ /opt/ /usr/share/nginx/html

ข้อสรุป

ขอแสดงความยินดีคุณได้ติดตั้ง Nginx บนเซิร์ฟเวอร์ CentOS 7 ของคุณสำเร็จแล้ว ตอนนี้คุณพร้อมที่จะเริ่มปรับใช้แอปพลิเคชันของคุณและใช้ Nginx เป็นเว็บหรือพร็อกซีเซิร์ฟเวอร์ หากคุณต้องการโฮสต์หลายโดเมนบนเซิร์ฟเวอร์ CentOS ของคุณคุณควรเรียนรู้วิธีสร้างบล็อกเซิร์ฟเวอร์ Nginx

ใบรับรองความปลอดภัยเป็นคุณสมบัติที่ต้องมีสำหรับทุกเว็บไซต์ในปัจจุบัน เพื่อให้เว็บไซต์ของคุณปลอดภัยด้วยใบรับรอง SSL ของ Encrypt SSL ฟรีคุณสามารถดูบทช่วยสอนของเราเกี่ยวกับวิธีการรักษาความปลอดภัย Nginx ด้วย Let's Encrypt บน CentOS 7

nginx centos

โพสต์นี้เป็นส่วนหนึ่งของชุด LEMP Stack บน CentOS 7 ซีรีส์

โพสต์อื่น ๆ ในชุดนี้:

•วิธีติดตั้ง Nginx บน CentOS 7 •รักษาความปลอดภัย Nginx ด้วย Let's Encrypt บน CentOS 7 •ติดตั้ง MariaDB บน ​​CentOS 7 •ติดตั้ง PHP 7 บน CentOS 7 •วิธีตั้งค่า Nginx เซิร์ฟเวอร์บล็อกบน CentOS 7