SimpleHTTPSΕπεξήγηση διακομιστή: Πώς να στείλετε αρχεία χρησιμοποιώντας το Python

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

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

Όποτε κι αν χρειαστεί, η δημιουργία ενός τοπικού διακομιστή HTTP είναι μια χρήσιμη δεξιότητα.

Τι είναι ένας διακομιστής HTTP;

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

Για παράδειγμα, όταν πληκτρολογείτε στο //www.freecodecamp.org/news/πρόγραμμα περιήγησής σας, υπάρχει ένας διακομιστής που ακούει κάπου αυτό το αίτημα. Σε απάντηση, στέλνει πίσω δεδομένα, ώστε το πρόγραμμα περιήγησής σας να αποδίδει τη σελίδα FreeCodeCamp Developer News.

Φυσικά υπάρχουν πολλά περισσότερα που συμβαίνουν πίσω από τα παρασκήνια, αλλά για τους σκοπούς αυτού του σεμιναρίου, αυτό είναι το μόνο που πρέπει πραγματικά να γνωρίζετε

Πώς να ρυθμίσετε έναν τοπικό διακομιστή HTTP

  1. Εγκαταστήστε το Python
  2. Ανοίξτε τη γραμμή εντολών ή το τερματικό και εκτελέστε python -V
  3. Μεταβείτε στον κατάλογο του έργου σας με συστήματα cd* nix ή MacOS ή CDγια Windows
  4. Εκτελέστε τις ακόλουθες εντολές για να ξεκινήσετε έναν τοπικό διακομιστή HTTP:
# If python -V returned 2.X.X python -m SimpleHTTPServer # If python -V returned 3.X.X python3 -m http.server # Note that on Windows you may need to run python -m http.server instead of python3 -m http.server

Θα παρατηρήσετε ότι και οι δύο εντολές φαίνονται πολύ διαφορετικές - μία κλήσεις SimpleHTTPServerκαι η άλλη http.server. Αυτό συμβαίνει μόνο επειδή η SimpleHTTPServerενότητα μεταφέρθηκε στο Python http.serverστο Python 3. Και οι δύο λειτουργούν με τον ίδιο τρόπο.

Τώρα όταν πηγαίνετε σε //localhost:8000/εσάς θα δείτε μια λίστα με όλα τα αρχεία στον κατάλογό σας. Στη συνέχεια, μπορείτε απλώς να κάνετε κλικ στο αρχείο HTML που θέλετε να δείτε.

Απλώς λάβετε υπόψη ότι SimpleHTTPServerκαι http.serverπροορίζονται μόνο για δοκιμές σε τοπικό επίπεδο. Κάνουν μόνο πολύ βασικούς ελέγχους ασφαλείας και δεν πρέπει να χρησιμοποιούνται στην παραγωγή.

Πώς να στέλνετε αρχεία τοπικά

Για να δημιουργήσετε ένα είδος γρήγορου και βρώμικου συστήματος NAS (Network Attached Storage):

  1. Βεβαιωθείτε ότι και οι δύο υπολογιστές είναι συνδεδεμένοι μέσω του ίδιου δικτύου μέσω LAN ή WiFi
  2. Ανοίξτε τη γραμμή εντολών ή το τερματικό και εκτελέστε python -Vγια να βεβαιωθείτε ότι το Python είναι εγκατεστημένο
  3. Μεταβείτε στον κατάλογο του οποίου το αρχείο θέλετε να μοιραστείτε χρησιμοποιώντας την εντολή cd (αλλαγή καταλόγου).
  4. Μεταβείτε στον κατάλογο με το αρχείο που θέλετε να μοιραστείτε χρησιμοποιώντας συστήματα cd* nix ή MacOS ή CDγια Windows
  5. Ξεκινήστε τον διακομιστή HTTP με ένα python -m SimpleHTTPServerήpython3 -m http.server
  6. Ανοίξτε το νέο τερματικό και πληκτρολογήστε ifconfig* nix ή MacOS ή ipconfigσε Windows για να βρείτε τη διεύθυνση IP σας

Τώρα στον δεύτερο υπολογιστή ή τη συσκευή:

  1. Ανοίξτε το πρόγραμμα περιήγησης και πληκτρολογήστε τη διεύθυνση IP του πρώτου μηχανήματος, μαζί με τη θύρα 8000: //[ip address]:8000

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