Ρύθμιση μπλοκ διακομιστή Nginx (εικονικοί κεντρικοί υπολογιστές) σε CentOS/RHEL 8


Ένα μπλοκ διακομιστή Nginx είναι το ισοδύναμο ενός εικονικού κεντρικού υπολογιστή Apache και σας δίνει τη δυνατότητα να φιλοξενήσετε περισσότερους από έναν τομείς ή ιστότοπους στον διακομιστή σας.

Σε αυτό το άρθρο, θα μάθετε πώς να ρυθμίζετε μπλοκ διακομιστή Nginx (εικονικούς κεντρικούς υπολογιστές) σε CentOS 8 και RHEL 8 Linux.

Προαπαιτούμενα:

  • Μια εγγραφή A για τον τομέα σας. Με απλά λόγια, μια εγγραφή A αναφέρεται σε μια καταχώρηση DNS όπου το όνομα τομέα υποδεικνύεται στη δημόσια IP του διακομιστή, σε αυτήν την περίπτωση στον διακομιστή ιστού Nginx. Σε όλο αυτόν τον οδηγό , θα χρησιμοποιήσουμε το όνομα τομέα crazytechgeek.info.
  • Ένας διακομιστής Nginx ή μια στοίβα LEMP εγκατεστημένη στην παρουσία CentOS 8 ή RHEL 8.
  • Ένας χρήστης σύνδεσης με δικαιώματα Sudo.

Ας αρχίσουμε!

Βήμα 1: Δημιουργήστε έναν κατάλογο ρίζας εγγράφων Nginx

Αμέσως μετά, πρέπει να δημιουργήσετε έναν προσαρμοσμένο ριζικό κατάλογο ιστού για τον τομέα που θέλετε να φιλοξενήσετε. Για την περίπτωσή μας, θα δημιουργήσουμε τον κατάλογο όπως φαίνεται χρησιμοποιώντας την επιλογή mkdir -p για να δημιουργήσουμε όλους τους απαραίτητους γονικούς καταλόγους:

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

Στη συνέχεια, εκχωρήστε τα δικαιώματα καταλόγου χρησιμοποιώντας τη μεταβλητή περιβάλλοντος $USER. Καθώς το κάνετε, βεβαιωθείτε ότι έχετε συνδεθεί ως κανονικός χρήστης και όχι ως χρήστης root.

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

Στη συνέχεια, εκχωρήστε τα σωστά δικαιώματα καταλόγου αναδρομικά όπως φαίνεται:

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

Βήμα 2: Δημιουργήστε ένα δείγμα σελίδας για τον τομέα

Στη συνέχεια, θα δημιουργήσουμε ένα αρχείο index.html μέσα στον προσαρμοσμένο ριζικό κατάλογο ιστού που θα εξυπηρετείται από τον τομέα μόλις υποβληθεί ένα αίτημα.

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

Μέσα στο αρχείο, επικολλήστε το ακόλουθο δείγμα περιεχομένου.

<html>
    <head>
        <title>Welcome to your_domain!</title>
    </head>
    <body>
  <h1>Awesome! Your Nginx server block is working!</h1>
    </body>
</html>

Αποθηκεύστε και βγείτε από το αρχείο διαμόρφωσης.

Βήμα 3: Δημιουργήστε ένα μπλοκ διακομιστή Nginx στο CentOS

Για να εξυπηρετήσει ο διακομιστής web Nginx το περιεχόμενο στο αρχείο index.html που δημιουργήσαμε στο βήμα 2, πρέπει να δημιουργήσουμε ένα αρχείο μπλοκ διακομιστή με τις κατάλληλες οδηγίες. Επομένως, θα δημιουργήσουμε ένα νέο μπλοκ διακομιστή στο:

sudo vim /etc/nginx/conf.d/crazytechgeek.info.conf

Στη συνέχεια, επικολλήστε τη διαμόρφωση που εμφανίζεται παρακάτω.

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;
        }

		
    access_log /var/log/nginx/crazytechgeek.info.access.log;
    error_log /var/log/nginx/crazytechgeek.info.error.log;

}

Όταν τελειώσετε, αποθηκεύστε τις αλλαγές και βγείτε από το αρχείο διαμόρφωσης. Για να επιβεβαιώσετε ότι όλες οι διαμορφώσεις Nginx είναι υγιείς και χωρίς σφάλματα, εκτελέστε την εντολή:

sudo nginx -t

Το παρακάτω αποτέλεσμα θα πρέπει να είναι μια επιβεβαίωση ότι είστε έτοιμοι!

Τέλος, επανεκκινήστε τον διακομιστή ιστού Nginx και επιβεβαιώστε ότι εκτελείται όπως αναμένεται:

sudo systemctl restart nginx
sudo systemctl status nginx

Βήμα 4: Δοκιμή του μπλοκ διακομιστή Nginx στο CentOS

Τελειώσαμε όλοι με τις διαμορφώσεις. Το μόνο που απομένει είναι να επιβεβαιώσουμε εάν το μπλοκ διακομιστή μας προβάλλει περιεχόμενο στον ριζικό κατάλογο ιστού που ορίστηκε νωρίτερα στο αρχείο index.html.

Για να το κάνετε αυτό, απλώς ανοίξτε το πρόγραμμα περιήγησής σας και μεταβείτε στον τομέα του διακομιστή σας όπως φαίνεται:

http://domain-name

Όπως παρατηρήθηκε, το περιεχόμενό μας εξυπηρετείται από το μπλοκ διακομιστή, μια σαφής ένδειξη ότι όλα πήγαν καλά.

Βήμα 5: Ενεργοποιήστε το HTTPS σε τομέα που φιλοξενείται στο Nginx

Μπορείτε να εξετάσετε το ενδεχόμενο κρυπτογράφησης του τομέα σας χρησιμοποιώντας το Lets Encrypt SSL για να προσθέσετε ένα επίπεδο προστασίας και ασφαλούς κυκλοφορίας προς και από τον διακομιστή ιστού.

sudo dnf install certbot python3-certbot-nginx
sudo certbot --nginx

Για να επιβεβαιώσετε ότι ο τομέας σας έχει διαμορφωθεί σωστά στο HTTPS, επισκεφτείτε τη διεύθυνση https://yourwebsite.com/ στο πρόγραμμα περιήγησής σας και αναζητήστε το εικονίδιο κλειδώματος στη γραμμή URL.

συμπέρασμα

Έχουμε δημιουργήσει με επιτυχία ένα μπλοκ διακομιστή Nginx στο CentOS 8 και στο RHEL 8. Μπορείτε να επαναλάβετε το ίδιο για πολλούς τομείς χρησιμοποιώντας την ίδια διαδικασία.