Επιστροφή στο blog

Πώς να εγκαταστήσετε το LEMP stack (Linux, Nginx, MySQL PHP) στο Ubuntu 20.04

Πώς να εγκαταστήσετε το LEMP stack (Linux, Nginx, MySQL PHP) στο Ubuntu 20.04

Εισαγωγή

Στον κόσμο του διαδικτύου, διάφορες τεχνολογίες συνδυάζονται για να σχηματίσουν μια λύση που επιτρέπει στους χρήστες του διαδικτύου να έχουν πρόσβαση σε δυναμικό περιεχόμενο στον παγκόσμιο ιστό. Το LEMP stack είναι μία από αυτές τις λύσεις. Συγκεντρώνει τέσσερις τεχνολογίες που αποτελούν μια ολοκληρωμένη λύση διακομιστή για ιστότοπους υψηλής απόδοσης και δυναμικού περιεχομένου. Το LEMP είναι ακρωνύμιο για τα Linux, Nginx, MySQL και PHP. Το Linux είναι το λειτουργικό σύστημα του διακομιστή. Το Nginx (το οποίο προφέρεται ως Engine-X, εξού και το γράμμα E στο ακρωνύμιο) είναι το λογισμικό του διακομιστή ιστού. Στη συνέχεια, η MySQL είναι το σύστημα βάσης δεδομένων που διατηρεί τα δεδομένα του ιστότοπου και των χρηστών. Η PHP είναι η γλώσσα σεναρίων στην πλευρά του διακομιστή για δυναμική επεξεργασία.

Σε αυτόν τον οδηγό, θα σας καθοδηγήσουμε για το πώς να εγκαταστήσετε και να ρυθμίσετε ένα LEMP stack, και να ελέγξετε ότι όλα λειτουργούν όπως αναμένεται. Ας ξεκινήσουμε!

Βήμα 1: Ρύθμιση παραμέτρων του διακομιστή σας με Ubuntu 20.04

Το Ubuntu 20.04 είναι ένα λειτουργικό σύστημα βασισμένο στο Linux. Υπάρχουν διάφορα λειτουργικά συστήματα διακομιστή βασισμένα στο Linux εκεί έξω, συμπεριλαμβανομένων δωρεάν και premium εκδόσεων. Η εστίαση αυτού του οδηγού είναι στο Ubuntu 20.04, το οποίο είναι δωρεάν και ανοιχτού κώδικα. Αυτό το βήμα καλύπτει την πρώτη απαίτηση στο ακρωνύμιο του LEMP stack, το L. Θα πρέπει να έχετε μια πραγματική εγκατάσταση Ubuntu 20.04 στον VPS σας για να προχωρήσετε στα επόμενα βήματα. Μπορείτε να ακολουθήσετε τον οδηγό μας για τη ρύθμιση του Ubuntu Server σας. Προαιρετικά, εάν θέλετε να ακολουθήσετε αυτόν τον οδηγό στον τοπικό σας υπολογιστή, μπορείτε να κατεβάσετε την εικόνα εγκατάστασης του Ubuntu 20.04 server απευθείας από τον ιστότοπο της Ubuntu website. Θα πρέπει να ρυθμίσετε έναν κανονικό χρήστη μη-root με δικαιώματα sudo, επειδή θα εκτελέσουμε μερικές εντολές που απαιτούν δικαιώματα sudo.

Βήμα 2: Εγκατάσταση και ρύθμιση του διακομιστή Nginx

Οι διακομιστές ιστού (Web Servers) μας επιτρέπουν να σερβίρουμε περιεχόμενο, όπως ιστοσελίδες, στους επισκέπτες του ιστότοπου. Ο Nginx είναι ένας δημοφιλής διακομιστής ιστού, που εμφανίζεται μεταξύ των πέντε κορυφαίων ανοιχτού κώδικα διακομιστών ιστού που προτιμούν οι προγραμματιστές. Αυτό το βήμα καλύπτει τη δεύτερη απαίτηση στο LEMP stack, το E για το Nginx. Το Ubuntu διαθέτει ένα προεπιλεγμένο αποθετήριο πακέτων από το οποίο θα λάβουμε πακέτα για χρήση σε αυτόν τον οδηγό. Το Ubuntu βασίζεται στο Debian, το οποίο χρησιμοποιεί το apt ή το dpkg για τη διαχείριση των πακέτων του. Για πακέτα από το προεπιλεγμένο αποθετήριο, θα χρησιμοποιήσουμε το apt.

Ως γενικός κανόνας, θα πρέπει να εκτελείτε την εντολή ενημέρωσης (update) πριν ξεκινήσετε οποιαδήποτε εγκατάσταση σε ένα σύστημα Linux. Ξεκινήστε εισάγοντας την ακόλουθη εντολή στο τερματικό:

Αφού ολοκληρώσετε την ενημέρωση, μπορείτε τώρα να εγκαταστήσετε το Nginx με την ακόλουθη εντολή:

Μόλις ολοκληρωθεί η εγκατάσταση, το Nginx ξεκινά να εκτελείται αυτόματα. Το επόμενο βήμα είναι να ρυθμίσετε το τείχος προστασίας (firewall) ώστε να επιτρέπει τη διέλευση της κίνησης. Το Ubuntu χρησιμοποιεί το πακέτο ufw (Uncomplicated Firewall) για τη ρύθμιση των τειχών προστασίας. Μετά την εγκατάσταση, το Nginx εγγράφεται ως υπηρεσία στο ufw. Το Ubuntu ξεκινά την υπηρεσία Firewall αυτόματα κατά την εκκίνηση του συστήματος, αλλά για να είστε σίγουροι, πληκτρολογήστε την ακόλουθη εντολή για να την ενεργοποιήσετε:

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

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

ufw app list

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

  • Nginx Full – ανοίγει τόσο τη θύρα 80 όσο και την 443. Η θύρα 80 είναι για κανονική/μη κρυπτογραφημένη κίνηση, δηλ. HTTP. Η θύρα 443 είναι για κρυπτογραφημένη κίνηση TLS/SSL, δηλ. https.
  • Nginx HTTP – ανοίγει μόνο τη θύρα 80 – μη κρυπτογραφημένη κίνηση.
  • Nginx HTTPS – ανοίγει μόνο τη θύρα 443 – κρυπτογραφημένη κίνηση TLS/SSL.

Παρόλο που το Nginx εγγράφεται αυτόματα στο ufw, δεν επιτρέπεται καμία κίνηση προς τον διακομιστή σας μέχρι να το κάνετε εσείς οι ίδιοι. Μπορείτε να επιλέξετε να επιτρέψετε όλα ή οποιοδήποτε από τα προφίλ, ωστόσο, είναι προτιμότερο να επιτρέψετε το πιο περιοριστικό προφίλ που θα εξακολουθεί να επιτρέπει την κίνηση που έχετε ρυθμίσει για τον διακομιστή ιστού σας. Εφόσον δεν έχουμε ρυθμίσει το SSL σε αυτόν τον οδηγό, θα επιτρέψουμε μόνο την κίνηση HTTP στη θύρα 80. Αν είστε περίεργοι, έχουμε έναν οδηγό για τη ρύθμιση του SSL στον διακομιστή Nginx από το Let’s Encrypt χρησιμοποιώντας το Certbot.

Ας επιτρέψουμε την κίνηση στη θύρα 80 εισάγοντας την ακόλουθη εντολή:

Για να επαληθεύσετε ότι η αλλαγή ήταν επιτυχής, πληκτρολογήστε την ακόλουθη εντολή:

check status

Το παραπάνω αποτέλεσμα από την εκτέλεση της εντολής δείχνει ότι η κίνηση HTTP επιτρέπεται πλέον. Μπορείτε να ελέγξετε αν ο διακομιστής λειτουργεί αποκτώντας πρόσβαση στο domain σας ή στη δημόσια IP του διακομιστή σας στο πρόγραμμα περιήγησης. Εάν δεν είχατε ρυθμίσει ένα όνομα domain και δεν είστε σίγουροι για τη δημόσια διεύθυνση IP του διακομιστή σας, μπορείτε να τη βρείτε χρησιμοποιώντας το curl εκτελώντας την ακόλουθη εντολή:

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

nginx start page

Η παραπάνω σελίδα υποδεικνύει ότι εγκαταστήσατε επιτυχώς το Nginx.

Βήμα 3: Εγκατάσταση του Συστήματος Διαχείρισης Βάσεων Δεδομένων MySQL

Η διαχείριση δεδομένων είναι ένα κρίσιμο μέρος οποιουδήποτε δυναμικού ιστότοπου. Το MySQL είναι ένα σύστημα διαχείρισης βάσεων δεδομένων που αποθηκεύει και διαχειρίζεται τα δεδομένα ενός ιστότοπου. Αυτό το βήμα φροντίζει για την τρίτη απαίτηση στη στοίβα LEMP, το M. Εισαγάγετε την ακόλουθη εντολή για να εγκαταστήσετε το MySQL:

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

mysql secure installation

Το σενάριο ρωτά εάν θέλετε να ρυθμίσετε το στοιχείο VALIDATE PASSWORD ή να πατήσετε οποιοδήποτε γράμμα για να προχωρήσετε χωρίς να ενεργοποιήσετε το στοιχείο.

Το στοιχείο VALIDATE PASSWORD είναι μια δυνατότητα που χρησιμοποιείται για τον έλεγχο του εάν ο κωδικός πρόσβασης που εισαγάγατε για έναν συγκεκριμένο χρήστη στον διακομιστή βάσης δεδομένων σας πληροί ένα συγκεκριμένο κριτήριο. Μπορείτε να το ρυθμίσετε ώστε να ελέγχει πράγματα όπως το μήκος, τους αριθμητικούς χαρακτήρες, τη διαθεσιμότητα κεφαλαίων ή πεζών γραμμάτων κ.λπ. Εάν δεν είναι ενεργοποιημένο, τότε μπορείτε να ρυθμίσετε οποιονδήποτε κωδικό πρόσβασης της επιλογής σας. Ωστόσο, εάν είναι ενεργοποιημένο, πρέπει να χρησιμοποιήσετε έναν κωδικό πρόσβασης που να πληροί τα κριτήρια που καθορίσατε. Η ενεργοποίησή του ενδέχεται να προκαλέσει προβλήματα με πακέτα που ρυθμίζουν αυτόματα τα διαπιστευτήρια χρήστη του MySQL, όπως το πακέτο phpMyAdmin για το Ubuntu. Το αν θα το ενεργοποιήσετε ή όχι είναι προσωπική επιλογή. Η βάση δεδομένων σας είναι ακόμα ασφαλής εάν δεν το ενεργοποιήσετε, απλώς βεβαιωθείτε ότι χρησιμοποιείτε ισχυρούς και μοναδικούς κωδικούς πρόσβασης.

Εάν πατήσατε Y για την ενεργοποίηση του στοιχείου, τότε το σενάριο θα σας ζητήσει να επιλέξετε ένα επίπεδο επικύρωσης κωδικού πρόσβασης:

password strength

Το σενάριο παρέχει 3 επίπεδα επικύρωσης κωδικού πρόσβασης. Το επίπεδο LOW απαιτεί ο κωδικός πρόσβασής σας να περιλαμβάνει μόνο 8 ή περισσότερους χαρακτήρες. Το επίπεδο MEDIUM απαιτεί ο κωδικός πρόσβασής σας να περιλαμβάνει 8 ή περισσότερους χαρακτήρες, οι οποίοι πρέπει να είναι ένας συνδυασμός κεφαλαίων γραμμάτων, πεζών γραμμάτων και ειδικών χαρακτήρων. Το επίπεδο STRONG απαιτεί έναν σύνθετο κωδικό πρόσβασης με 8 ή περισσότερους χαρακτήρες, ο οποίος πρέπει να είναι ένας συνδυασμός κεφαλαίων γραμμάτων, πεζών γραμμάτων, ειδικών χαρακτήρων και λέξεων, και δεν πρέπει να βασίζεται σε κοινές λέξεις λεξικού, διαφορετικά θα λάβετε σφάλματα. Ας επιλέξουμε το επίπεδο Low, πληκτρολογήστε 0 και πατήστε enter.

Το σενάριο σας ζητά να εισαγάγετε και να εισαγάγετε ξανά τον κωδικό πρόσβασης:

set password

Πληκτρολογήστε y και enter για να αποδεχτείτε τον κωδικό πρόσβασης που πληκτρολογήσατε ως κωδικό πρόσβασης root. Οι επόμενες προτροπές αφορούν τη βελτίωση της ασφάλειας του διακομιστή MySQL. Ξεκινώντας με την κατάργηση των προεπιλεγμένων ανώνυμων χρηστών που συνοδεύουν κάθε εγκατάσταση MySQL, την απενεργοποίηση της σύνδεσης root από απομακρυσμένη σύνδεση και την κατάργηση των δοκιμαστικών βάσεων δεδομένων. Η τελική προτροπή σάς ζητά να επαναφορτώσετε τον πίνακα προνομίων για να τεθούν σε ισχύ οι εντολές. Πληκτρολογήστε y και πατήστε enter για όλες τις προτροπές:

mysql secure installation

Η αρχική ρύθμιση ασφαλείας έχει ολοκληρωθεί.

Μπορείτε να ελέγξετε την έκδοση του MySQL που εγκαταστήσατε εκτελώντας την εντολή:

Εδώ είναι η έκδοση που χρησιμοποιούμε για αυτόν τον οδηγό:

mysql version

Για συστήματα Ubuntu που εκτελούν εκδόσεις MySQL από 5.7 και μεταγενέστερες, ο χρήστης root έχει ρυθμιστεί να κάνει έλεγχο ταυτότητας χρησιμοποιώντας το πρόσθετο auth_socket και όχι με κωδικό πρόσβασης. Αυτό εξασφαλίζει μεγαλύτερη ασφάλεια, ωστόσο, μπορεί να αποτελέσει πρόβλημα με εξωτερικά πακέτα όπως το πακέτο phpMyAdmin. Εάν προτιμάτε να προχωρήσετε με τη χρήση του πρόσθετου auth_socket, τότε μεταβείτε στο Βήμα 4.

Εάν θέλετε να συνδεθείτε χρησιμοποιώντας κωδικό πρόσβασης, τότε πρέπει να διαμορφώσετε τη μέθοδο ελέγχου ταυτότητας ώστε να χρησιμοποιεί το mysql_native_password.

Εκκινήστε τη γραμμή εντολών της MySQL εισάγοντας την ακόλουθη εντολή:

Η MySQL συνοδεύεται από αρκετές προεπιλεγμένες βάσεις δεδομένων. Μπορείτε να δείτε μια λίστα με τις προεπιλεγμένες βάσεις δεδομένων εισάγοντας το ακόλουθο ερώτημα στο τερματικό σας:

mysql dbs LEMP stack

Η βάση δεδομένων που ονομάζεται mysql αποθηκεύει διάφορες ρυθμίσεις που σχετίζονται με τη MySQL. Αυτή η βάση δεδομένων έχει έναν πίνακα που ονομάζεται users, ο οποίος περιέχει τα στοιχεία των χρηστών και τη μέθοδο ελέγχου ταυτότητας για τον καθένα. Μπορούμε να χρησιμοποιήσουμε ερωτήματα SQL για να ανακτήσουμε, να τροποποιήσουμε και να διαγράψουμε πληροφορίες από έναν πίνακα. Εισαγάγετε το ακόλουθο ερώτημα στο τερματικό σας για να λάβετε λεπτομέρειες σχετικά με τη μέθοδο ελέγχου ταυτότητας που χρησιμοποιεί κάθε χρήστης:

user authentication check

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

Mόλις το ερώτημα εκτελεστεί με επιτυχία, εκτελέστε την εντολή flush privileges για να τεθούν σε ισχύ οι αλλαγές αμέσως:

Εκτελέστε ξανά τη δήλωση select παρακάτω για να ελέγξετε αν οι αλλαγές έχουν τεθεί σε ισχύ:

updated user authentication check

Από το αποτέλεσμα, ο χρήστης root θα κάνει πλέον έλεγχο ταυτότητας χρησιμοποιώντας το mysql_native_password. Μπορείτε να βγείτε από τη γραμμή εντολών της mysql πληκτρολογώντας exit και πατώντας enter.

Μπορείτε να δοκιμάσετε να συνδεθείτε με τον κωδικό πρόσβασης που ορίσατε εισάγοντας την ακόλουθη εντολή:

Η γραμμή εντολών θα σας ζητήσει τον κωδικό πρόσβασής σας. Εάν ταιριάζει, θα δείτε τη γραμμή εντολών της MySQL. Ρυθμίσατε με επιτυχία τον διακομιστή σας με τη MySQL. Στη συνέχεια, βγείτε από τη γραμμή εντολών της MySQL.

Βήμα 4: Εγκατάσταση της PHP και ρύθμιση του Nginx για χρήση του επεξεργαστή PHP

Η PHP είναι ακρωνύμιο του PHP: Hypertext Preprocessor. Είναι μια ευρέως χρησιμοποιούμενη γλώσσα σεναρίων ανοιχτού κώδικα στην πλευρά του διακομιστή (server-side) για ιστότοπους και εφαρμογές ιστού. Η PHP καλύπτει την τέταρτη απαίτηση στη στοίβα LEMP. Η PHP βοηθά στη δημιουργία δυναμικού περιεχομένου σε έναν ιστότοπο. Μπορεί να χρησιμοποιηθεί ως ενδιάμεσος μεταξύ των ιστοσελίδων σας και του συστήματος βάσης δεδομένων. Διαβάζει δεδομένα από τη βάση δεδομένων και τα παρουσιάζει στους επισκέπτες του ιστότοπού σας. Επιπλέον, μπορεί να εισάγει, να ενημερώνει και να διαγράφει δεδομένα από τη βάση δεδομένων.

Ο Nginx δεν διαθέτει τα εγγενή πρόσθετα επεξεργασίας PHP όπως άλλοι διακομιστές ιστού, επομένως πρέπει να εγκαταστήσετε το php-fpm για να μεταβιβάζετε αιτήματα από τον Nginx στην PHP για επεξεργασία. Αρχικά, προσθέστε το αποθετήριο Ubuntu universe, το οποίο διαθέτει δωρεάν λογισμικό ανοιχτού κώδικα που συντηρείται από την κοινότητα του Ubuntu. Εισαγάγετε την ακόλουθη εντολή στο τερματικό σας:

Στη συνέχεια, εγκαταστήστε το πακέτο php-fpm μαζί με το βοηθητικό πακέτο php-mysql για να επιτρέψετε στην PHP να επικοινωνεί με τη MySQL, χρησιμοποιώντας την ακόλουθη εντολή:

Κατά τη συγγραφή αυτού του οδηγού, η έκδοση PHP που εγκαθίσταται από την παραπάνω εντολή είναι η 7.2.24. Επομένως, εγκαθιστά το πακέτο php-fpm7.2. Έχετε αυτό υπόψη σας κατά την ενημέρωση των server blocks και βεβαιωθείτε ότι εισάγετε τη σωστή έκδοση, διαφορετικά η σελίδα σας δεν θα φορτώνει.

Μπορείτε να ελέγξετε την έκδοση της PHP εισάγοντας την ακόλουθη εντολή:

php version

Σε αυτό το σημείο, όλα τα στοιχεία της στοίβας LEMP έχουν εγκατασταθεί. Αυτό που πρέπει να κάνετε στη συνέχεια είναι να ρυθμίσετε το Nginx ώστε να κατευθύνει τα αιτήματα στον επεξεργαστή PHP. Στο Nginx, η ρύθμιση παραμέτρων γίνεται μέσα στα server blocks. Τα server blocks είναι ισοδύναμα με τα εικονικά hosts (virtual hosts) του Apache. Για περισσότερες πληροφορίες, μπορείτε να ρίξετε μια ματιά στον οδηγό μας για τα Nginx server blocks.

Για αυτόν τον οδηγό, ας δημιουργήσουμε ένα server block για ένα domain test.com με το ίδιο όνομα, είστε ελεύθεροι να επιλέξετε το όνομα της επιλογής σας. Τα server blocks βρίσκονται στον κατάλογο /etc/nginx/sites-available/. Χρησιμοποιήστε το nano για να δημιουργήσετε το αρχείο του server block εισάγοντας την ακόλουθη εντολή:

Πληκτρολογήστε το ακόλουθο σενάριο στο αρχείο:

Ακολουθεί μια σύντομη περιγραφή του τι κάνει κάθε οδηγία:

  • listen – ορίζει τη θύρα στην οποία θα ακούει το Nginx. Η θύρα 80 είναι η προεπιλεγμένη θύρα, ωστόσο, αν είχατε ρυθμίσει SSL, θα βάζατε την 443.
  • root – περιέχει τον κατάλογο στον οποίο θα αποθηκευτεί ο κατάλογος του ιστότοπου.
  • index – καθοδηγεί το Nginx να δώσει προτεραιότητα στην εξυπηρέτηση των αρχείων index.php, εάν είναι διαθέσιμα κατόπιν αιτήματος.
  • server_name – ορίζει το όνομα του server block, περιέχει τη δημόσια διεύθυνση IP ή το όνομα domain του διακομιστή σας.
  • location/ – το πρώτο location block έχει την οδηγία try_files. Ελέγχει για την ύπαρξη αρχείων που αντιστοιχούν σε ένα αίτημα URI, εάν δεν βρεθούν, επιστρέφεται ένα σφάλμα 404.
  • location ~ \.php$ – αυτή η οδηγία χειρίζεται την επεξεργασία PHP κατευθύνοντας τα αιτήματα του Nginx μέσω του αρχείου fastcgi-php.conf και του αρχείου php7.2-fpm.sock, το οποίο ορίζει ποιο socket θα συσχετιστεί με το php-fpm. Αυτή η εντολή ελέγχει την κατάσταση του php-fpm, καθορίζουμε την έκδοση ως 7.2, η οποία είναι αυτή που έχουμε. Βεβαιωθείτε ότι ελέγχετε με όποια έκδοση έχετε εσείς:
php status

  • location ~ /\.ht – αυτή η οδηγία χειρίζεται τα αρχεία .htaccess, τα οποία δεν επεξεργάζονται από το Nginx. Η οδηγία deny all διασφαλίζει ότι κανένα αρχείο htaccess δεν θα σερβίρεται στους επισκέπτες.

Αφού προσθέσετε το σενάριο στο αρχείο test.com, πληκτρολογήστε Ctrl + O και, στη συνέχεια, πατήστε Enter για να αποθηκεύσετε το αρχείο. Πληκτρολογήστε Ctrl + X για να κλείσετε τον επεξεργαστή κειμένου.

Στη συνέχεια, πρέπει να ενεργοποιήσετε το server block εισάγοντας την ακόλουθη εντολή για να δημιουργήσετε έναν συμβολικό σύνδεσμο προς το /etc/nginx/sites-enabled:

Στη συνέχεια, αποσυνδέστε το προεπιλεγμένο server block από το sites-enabled εισάγοντας την ακόλουθη εντολή:

Δοκιμάστε τη νέα σας ρύθμιση εισάγοντας την ακόλουθη εντολή:

Αν η σύνταξη είναι σωστή, επαναφορτώστε το Nginx με την ακόλουθη εντολή:

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

Βήμα 5: Δημιουργία αρχείου PHP για τη δοκιμή του LEMP stack σας

Σε αυτό το βήμα, δημιουργούμε ένα αρχείο .php και το εκτελούμε στον διακομιστή Nginx για να ελέγξουμε αν λειτουργεί σωστά. Θα χρησιμοποιήσουμε την καθολική συνάρτηση phpinfo() για να ελέγξουμε τα διαθέσιμα πακέτα php. Εισαγάγετε την ακόλουθη εντολή για να ανοίξετε ένα αρχείο .php στο nano:

Στον επεξεργαστή nano, πληκτρολογήστε το ακόλουθο απόσπασμα κώδικα:

Αποθηκεύστε και κλείστε το αρχείο. Για να επισκεφθείτε τη σελίδα που μόλις δημιουργήσατε στο πρόγραμμα περιήγησής σας, βρείτε το domain ή τη διεύθυνση IP σας και μεταβείτε σε αυτήν ως εξής:

Θα πρέπει να μπορείτε να δείτε τη σελίδα πληροφοριών PHP:

php info page

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

 

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

Συμπέρασμα

Σε αυτόν τον οδηγό, ρυθμίσατε ένα LEMP stack στο Ubuntu 20.04, το οποίο είναι ένα από τα πιο ισχυρά stacks ανάπτυξης διαδικτυακών εφαρμογών που υπάρχουν. Από εδώ και στο εξής, θα πρέπει να είστε σε θέση να φιλοξενήσετε σχεδόν οποιονδήποτε ιστότοπο, διαδικτυακές εφαρμογές ή λογική διακομιστή (server-side logic) για την εφαρμογή σας για κινητά. Για να διασφαλίσετε ότι ο ιστότοπός σας παρέχει περιεχόμενο μέσω μιας ασφαλούς σύνδεσης SSL, έχουμε έναν οδηγό για τη ρύθμιση πιστοποιητικών SSL στον διακομιστή Nginx, τον οποίο σας συνιστούμε να διαβάσετε.

Καλή συνέχεια!

author

Akshay Nagpal

Συγγραφέας · CloudSigma

Ο Preslav Dobrev είναι Δημιουργικός Σχεδιαστής στην CloudSigma, με εστίαση στη συνεπή επιχειρηματική ταυτότητα μέσω παραδοσιακών και καινοτόμων καναλιών μάρκετινγκ. Διαθέτει την ικανότητα να συνδυάζει το καλλιτεχνικό όραμα με το στρατηγικό μάρκετινγκ για τη δημιουργία εντυπωσιακών αφηγήσεων επωνυμίας.

Σχόλια

Δεν υπάρχουν σχόλια ακόμα. Γράψτε το πρώτο.