7 Διακομιστές Ιστού ανοιχτού κώδικα για μικρούς έως μεγάλους ιστότοπους

Έχουμε κάνει πολύ δρόμο από τότε που κυκλοφόρησε ο πρώτος διακομιστής ιστού. Τώρα υπάρχουν τόσες περισσότερες συναρπαστικές επιλογές.

Διαφορετικά έργα έχουν διαφορετικές ανάγκες, αλλά το τμήμα διακομιστή web ανοιχτού κώδικα ήταν λίγο πολύ μονοπώλιο. Για πολύ καιρό, το Apache ήταν η μόνη επιλογή και ο χειρισμός υψηλών φορτίων ήταν πόνος στο πίσω μέρος. Ευτυχώς, οι καιροί έχουν αλλάξει και έχουν προκύψει νέες λύσεις για εξειδικευμένες ανάγκες.

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

Απάχης

Είναι σχεδόν συνώνυμο με τον Παγκόσμιο Ιστό και εξακολουθεί να εξουσιοδοτεί την πλειοψηφία των ιστότοπων στον κόσμο.

Ο λόγος για την κυριαρχία του Apache είναι τριπλός: μια ανοιχτή άδεια, η πρώιμη είσοδος (αυτό το πράγμα κυκλοφόρησε πολύ πίσω το 1995!) και εύκολη ανάπτυξη της PHP. Το τελευταίο σημείο κατέστη δυνατό μέσω της ενότητας mod_php, που σήμαινε ότι η εγκατάσταση του Apache ήταν το μόνο που έπρεπε να κάνετε για την ανάπτυξη με την PHP.

Να τι κάνει Απάχης μεγάλος:

  • Διαθέσιμο σε όλες τις πλατφόρμες – Linux, Windows, MacOS και άλλες πλατφόρμες.
  • Είναι ο προεπιλεγμένος διακομιστής για όλους τους κοινόχρηστους χώρους φιλοξενίας CPanel, καθιστώντας εύκολη τη ρύθμιση και την αλλαγή ιστοτόπων.
  • Τόνοι λειτουργικότητας που προσφέρεται μέσα από μια μεγάλη συλλογή από ενότητες. Ανεξάρτητα από το πόσο σκοτεινές είναι οι ανάγκες σας, είναι βέβαιο ότι υπάρχει μια υπάρχουσα ενότητα για τον Apache.
  • Διαμόρφωση ανά κατάλογο μέσω αρχείων .htaccess.
  • Υποστήριξη για HTTP/2, συμπίεση, στατικά αρχεία και εξισορρόπηση φορτίου.
  • Λειτουργίες MPM και FastCGI για παροχή υψηλής ταυτόχρονης λειτουργίας.
  • Εύκολο σενάριο μέσω του Lua.

Είναι το Apache για εσάς;

Εν ολίγοις, ναι. Υπήρξε μια εποχή που το Nginx (το οποίο θα εξετάσουμε στη συνέχεια) απογειώθηκε λόγω της υψηλής απόδοσης του, αλλά το Apache πρόλαβε μετά την κυκλοφορία του 2.2. Τούτου λεχθέντος, όπως όλοι οι πρώτοι εισαχθέντες, το Nginx αφαίρεσε πολύ την προσοχή, ώστε να συναντήσετε κάποια (άκυρη) κριτική για τις δυνατότητές του.

Nginx

Αν σας αρέσει να πίνετε από το σιντριβάνι «kool-aid» (ή για να είμαστε πολιτικά ορθοί, ακολουθήστε τις «τελευταίες» εξελίξεις), είναι πιθανό να έχετε ακούσει Nginx (προφέρεται σαν “engine-x”, που ήταν η ιδέα πίσω από το όνομα). Κυκλοφόρησε ως έργο το 2002 από έναν Ρώσο μηχανικό που βαρέθηκε με την αδυναμία των τότε λύσεων να νικήσουν CK10 πρόβλημα (βασικά, χειρισμός χιλιάδων ταυτόχρονων συνδέσεων).

  Λάβετε έμπνευση χρησιμοποιώντας πρότυπα που δημιουργούνται αυτόματα για δύσκολο να γράψετε μηνύματα ηλεκτρονικού ταχυδρομείου

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

  • Ασύγχρονη αρχιτεκτονική για χειρισμό υψηλών φορτίων
  • Οι καλύτερες δυνατότητες διαχείρισης στατικών αρχείων, εξισορρόπησης φορτίου και αντίστροφης διακομιστή μεσολάβησης.
  • FastCGI προσωρινή αποθήκευση
  • Υποστήριξη για uwsgi, SCGI και άλλα πρωτόκολλα διακομιστή, με προσωρινή αποθήκευση.
  • Gzipping, μετασχηματισμός εικόνας, εύρη byte, τεμαχισμένες αποκρίσεις κ.λπ., με ροή FLV και MKV.
  • Συνδέσεις WebSockets, keepalive και pipelined
  • Έλεγχος πρόσβασης, ανακατεύθυνση σφαλμάτων κ.λπ.

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

Είναι το Nginx για εσάς;

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

Και, ναι – το Nginx είναι έτοιμο για HTTP/2.

Ενδιαφέρεστε να μάθετε Nginx; Ελέγξτε αυτό θεμελιώδης πορεία.

Κουτί

Ένα από τα πιο καυτά νέα πλαίσια που κάνουν πιτσιλιές στην κοινότητα ανοιχτού κώδικα πρόσφατα είναι Κουτί.

Σκεφτείτε τον Caddy ως διακομιστή ιστού που μοιάζει με Nginx (παρόμοια σύνταξη και όλα), αλλά όλα είναι απλοποιημένα σε ένα ευχάριστο άκρο. Για παράδειγμα, η ενσωμάτωση Let’s Encrypt για SSL μπορεί να γίνει σε τρεις μόνο γραμμές διαμόρφωσης.

Να γιατί ο Caddy τραβάει πολλά βλέμματα:

  • Το HTTPS είναι ενεργοποιημένο από προεπιλογή. Ναι, δεν χρειάζεται να κάνετε τίποτα για την εγκατάσταση ή την ανανέωση πιστοποιητικών SSL.
  • Το HTTP/2 εστιάζει πρωταρχικά.
  • Περιστρέφει τα κλειδιά εισιτηρίων περιόδου σύνδεσης TLS από προεπιλογή. Αυτό κάνει μια πολύ πιο ασφαλή διαχείριση σύνδεσης TLS που δεν είναι ευάλωτη σε άτομα όπως το Heartbleed.
  • Χωρίς εξαρτήσεις (είναι μια δυαδική βάση κώδικα που έχει μεταγλωττιστεί από το Golang που δεν εξαρτάται από καμία υποκείμενη βιβλιοθήκη συστήματος)
  • Εξυπηρετεί στατικά αρχεία στον τρέχοντα κατάλογο από προεπιλογή!
  • Embeddable — μπορεί να χρησιμοποιηθεί ως βιβλιοθήκη σε άλλα προγράμματα
  Πώς να μετονομάσετε μια σειρά δεδομένων στο Microsoft Excel

Είναι το Caddy για εσάς;

Αν λαχταράτε την απλότητα και σας αποθαρρύνουν οι αμβλείες διαμορφώσεις όπως το Apache και το Nginx, το Caddy θα αισθάνεται σαν ένα αεράκι καθαρού αέρα. Τούτου λεχθέντος, λειτουργεί καλύτερα όταν είστε ικανοποιημένοι με τις προεπιλογές. Για παράδειγμα, εάν θέλετε να χρησιμοποιήσετε τον πάροχο SSL σας, έχετε έναν ξεχωριστό κατάλογο για στατικά αρχεία (κάτι που συμβαίνει σχεδόν πάντα) και ούτω καθεξής, τα πλεονεκτήματα εξαφανίζονται.

Μπορείς να πάρεις Caddy στην Καματέρα VM από μόλις 4 $ το μήνα.

Lighthttpd

Ο μόνος τομέας όπου οι περισσότεροι σύγχρονοι διακομιστές Ιστού αποτυγχάνουν είναι η χρήση πόρων. Lighthttpd σχεδιάστηκε για να ξεπερνά αυτές τις προκλήσεις σε περιβάλλοντα χαμηλής μνήμης και χαμηλής CPU.

Το Lighthttpd βασίζεται στο μοντέλο ασύγχρονου χειρισμού αιτημάτων και έτσι ουσιαστικά αντικατοπτρίζει τον τρόπο λειτουργίας του Nginx. Αλλά υπάρχει ένα αιχμή — το Lighthttpd λειτουργεί σε ένα μόνο νήμα, οπότε αν έχετε ένα πιο ικανό μηχάνημα, θα αγνοήσει άλλους πυρήνες CPU. Δεν διαθέτει επίσης τα πιο εντυπωσιακά χαρακτηριστικά του Nginx, όπως διακομιστή μεσολάβησης SSL, HTTP/2 και τα παρόμοια.

Είναι το Lighthttpd για εσάς;

Το Lighthttpd είναι ένας ικανός διακομιστής ιστού με ένα νήμα που μπορεί εύκολα να χειριστεί μερικές εκατοντάδες αιτήματα ανά δευτερόλεπτο και εξακολουθεί να είναι εύκολος στους πόρους του συστήματος. Εκτός από αυτό, δεν έχει πολλά να προσφέρει σε σύγκριση με τις εναλλακτικές. Έτσι, ίσως αν δεν χρειάζεστε όλα τα κουδούνια και σφυρίχτρες – και πραγματικά, πραγματικά ιδρώνετε για τους πόρους της μηχανής – το Lighthttpd αξίζει να το εξερευνήσετε.

MonkeyServer

Παρά το περίεργο όνομα, το Πίθηκος Ο web server είναι ένα ενδιαφέρον έργο που συνεχίζει να αναπτύσσεται και να υποστηρίζεται ενεργά.

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

  • Στοχεύει κυρίως το Linux, αλλά υποστηρίζεται και σε MacOS
  • Πλήρης υποστήριξη για επεξεργαστές που βασίζονται σε ARM
  • Λειτουργεί τέλεια σε Android, Raspberry Pi και άλλες ενσωματωμένες πλατφόρμες
  • Ελάχιστος χρόνος εκτέλεσης (100 KB χωρίς πρόσθετα)
  • Υποστηρίζει IPv6 και TLS
  • Λειτουργεί με CGI και FastCGI
  • Βασικός έλεγχος ταυτότητας, κανόνες ασφαλείας κ.λπ.
  Πριν από το Mac OS X: Τι ήταν το NeXTSTEP και γιατί το αγάπησαν οι άνθρωποι;

Είναι ο MonkeyServer για εσάς;

Εάν θέλετε να στοχεύσετε ενσωματωμένες συσκευές, ο MonkeyServer είναι λίγο πολύ αυτό που χρειάζεστε. Τούτου λεχθέντος, λειτουργεί εξίσου καλά στις αρχιτεκτονικές x86 και x86-64 και μπορεί να χρησιμοποιηθεί για την εκτέλεση εφαρμογών μεγάλης κλίμακας σε ισχυρά μηχανήματα. Έχει μια πολύ πιο ενεργή και ζωντανή κοινότητα από άλλους εναλλακτικούς διακομιστές ιστού, ώστε να μην χάνεστε ποτέ αν χρειάζεστε βοήθεια.

OpenLiteSpeed

OpenLiteSpeed είναι η γεύση ανοιχτού κώδικα του εταιρικού διακομιστή web που προσφέρεται από την LiteSpeed ​​Technologies.

Υπάρχουν πολλοί λόγοι για να σας αρέσει το OpenLiteSpeed:

  • Συμβατό με το mod_rewrite του Apache, που σημαίνει ότι εάν έχετε έναν τόνο υπαρχόντων αρχείων Apache, η μετεγκατάσταση θα είναι ελάχιστος πόνος.
  • Αρχιτεκτονική με γνώμονα τα συμβάντα στη λογική του Nginx, με αποτέλεσμα υψηλή απόδοση.
  • Διεπαφή διαχειριστή που βασίζεται σε GUI, που προσφέρει μια ευχάριστη εμπειρία διαμόρφωσης.
  • Native SAPI για PHP, με αποτέλεσμα υψηλότερη απόδοση.
  • Η προσωρινή αποθήκευση και οι βελτιστοποιήσεις Google PageSpeedInsights εφαρμόζονται από προεπιλογή.

Είναι το OpenLiteSpeed ​​για εσάς;

Το OpenLiteSpeed ​​έχει πολύ νόημα για ιστότοπους που βασίζονται σε περιεχόμενο που βασίζονται σε WordPress, καθώς οι βελτιστοποιήσεις σελίδων αποτελούν ήδη μέρος του διακομιστή. Δεδομένου ότι είναι βελτιστοποιημένο για απόδοση PHP, οι βάσεις κώδικα και τα έργα που βασίζονται σε PHP μπορούν να ωφεληθούν πάρα πολύ.

Τσερόκι

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

Η μεγαλύτερη νίκη για το Cherokee είναι η απλότητα — δεν χρειάζεται να ιδρώσετε με τη γραμμή εντολών για τη διαμόρφωση του διακομιστή. Μια φιλική διασύνδεση βασισμένη στον ιστό διατίθεται συσκευασμένη και είναι μια ευχάριστη χρήση για όσους προτιμούν τη μέθοδο point-and-click για να ολοκληρώσουν τα πράγματα.

Πηγή: Linode

Αν και το Cherokee δεν έχει αναπτυχθεί πολύ ενεργά, εξακολουθεί να είναι ένα καλό στοίχημα για τα περισσότερα καθημερινά έργα. Ελέγξτε το!

συμπέρασμα

Η ζωή δεν θα είχε νόημα χωρίς διακομιστές ιστού και, ευτυχώς, έχουμε αρκετούς να διαλέξουμε από τώρα. Ποιος είναι ο αγαπημένος σας web server ανοιχτού κώδικα; Εάν πιστεύετε ότι έχασα μια σημαντική καταχώριση στη λίστα, ενημερώστε με στα σχόλια και θα χαρώ πολύ να την προσθέσω! 🙂