Perl

Η Perl είναι μια συντομογραφία του [Practical Extraction and Report Language], η οποία είναι μια γλώσσα προγραμματισμού που μπορεί να εκτελεστεί σε πολλές πλατφόρμες όπως το UNIX OS και το Windows OS. Η γλώσσα αναπτύχθηκε από τον Larry Wall το 1987.
Για το πλήρες άρθρο στο Perl ...

Εμφάνιση φίλτρου
Φίλτρα φιλοξενίας
A2 Themes & Host Me Filter

Λειτουργικό σύστημα

Χώρος στο δισκο

Μνήμη RAM

Τύπος δίσκου

Πυρήνες CPU

Είδος

Trust Pilot Satelit Web
Βαθμολογία - 7.4
Satelit Web Logo
Satelit Web

Δορυφόρος Ιστός

Galaksi
$9.7 /Μηνιαίο

Κριτικές 1


Τοποθεσίες διακομιστή


Satelit Web Servers in United StatesΗνωμένες Πολιτείες
Συγκρίνω
Trust Pilot New Sys
Βαθμολογία - 7.4
New Sys Logo
New Sys

Νέα Sys

BASIC
$2.68 /Μηνιαίο

Κριτικές 1


Τοποθεσίες διακομιστή


New Sys Servers in AshburnΗνωμένες Πολιτείες
Συγκρίνω
Trust Pilot itanets.co.uk
Βαθμολογία - 7
itanets.co.uk Logo
itanets.co.uk

itanets.co.uk

JSP HOSTING 1
$5.19 /Μηνιαίο

Κριτικές 2

Συγκρίνω
Trust Pilot Fragnet
Βαθμολογία - 6
Fragnet Logo
Fragnet

Fragnet

Standard
$4.95 /Μηνιαίο

Κριτικές 40

14 Κουπόνια

Τοποθεσίες διακομιστή


Fragnet Servers in SwedenΣουηδία Fragnet Servers in United StatesΗνωμένες Πολιτείες
Συγκρίνω
Trust Pilot Hostek
Βαθμολογία - 6
Hostek Logo
Hostek

Hostek

Starter
$7.5 /Μηνιαίο

Κριτικές 2


Τοποθεσίες διακομιστή


Hostek Servers in United StatesΗνωμένες Πολιτείες
Συγκρίνω
Trust Pilot Leap Switch
Βαθμολογία - 5.8
Leap Switch Logo
Leap Switch

Διακόπτης άλματος

Linux UVPS-1 plan
$8.03 /Μηνιαίο

Κριτικές 7


Τοποθεσίες διακομιστή


Leap Switch Servers in KievΟυκρανία Leap Switch Servers in AshevilleΗνωμένες Πολιτείες Leap Switch Servers in LisbonΠορτογαλία Leap Switch Servers in MadridΙσπανία Leap Switch Servers in IndiaΙνδία
Συγκρίνω
Βαθμολογία - 10
Lenasi Logo
Lenasi

Lenasi

Baby Bear
$14.07 /Ετήσια


Τοποθεσίες διακομιστή


Lenasi Servers in UgandaΟυγκάντα Lenasi Servers in United KingdomΗνωμένο Βασίλειο Lenasi Servers in CanadaΚαναδάς Lenasi Servers in KenyaΚενύα Lenasi Servers in United StatesΗνωμένες Πολιτείες
Συγκρίνω
Βαθμολογία - 10
Pamir Web Host Logo
Pamir Web Host

Κεντρικός υπολογιστής ιστού Pamir

Bronze
$4.99 /Μηνιαίο


Τοποθεσίες διακομιστή


Pamir Web Host Servers in GermanyΓερμανία Pamir Web Host Servers in Kansas CityΗνωμένες Πολιτείες Pamir Web Host Servers in CanadaΚαναδάς Pamir Web Host Servers in FinlandΦινλανδία Pamir Web Host Servers in FranceΓαλλία Pamir Web Host Servers in United KingdomΗνωμένο Βασίλειο
Συγκρίνω
Βαθμολογία - 10
IDreg.net Logo
IDreg.net

IDreg.net

SharedHosting USA
$0.62 /Μηνιαίο


Τοποθεσίες διακομιστή


IDreg.net Servers in United StatesΗνωμένες Πολιτείες IDreg.net Servers in IndonesiaΙνδονησία IDreg.net Servers in SingaporeΣιγκαπούρη
Συγκρίνω
Βαθμολογία - 10
IDreg.net Logo
IDreg.net

IDreg.net

SharedHosting Indonesia
$0.62 /Μηνιαίο


Τοποθεσίες διακομιστή


IDreg.net Servers in United StatesΗνωμένες Πολιτείες IDreg.net Servers in IndonesiaΙνδονησία IDreg.net Servers in SingaporeΣιγκαπούρη
Συγκρίνω
Βαθμολογία - 10
PT Servidor Logo
PT Servidor

PT Servidor

PTSBasic
$2.68 /Μηνιαίο


Τοποθεσίες διακομιστή


PT Servidor Servers in LisbonΠορτογαλία
Συγκρίνω
Βαθμολογία - 10
Cheap Hosting Pk Logo
Cheap Hosting Pk

Φτηνές φιλοξενία Pk

Web Hosting Plan 1
$11.94 /Ετήσια


Τοποθεσίες διακομιστή


Cheap Hosting Pk Servers in NurembergΓερμανία Cheap Hosting Pk Servers in New YorkΗνωμένες Πολιτείες Cheap Hosting Pk Servers in VancouverΚαναδάς Cheap Hosting Pk Servers in MoscowΡωσική Ομοσπονδία Cheap Hosting Pk Servers in MinskΛευκορωσία
Συγκρίνω
Βαθμολογία - 10
Serverpace.io Logo
Serverpace.io

Serverpace.io

VPS Linux - Basic
$4.5 /Μηνιαίο


Τοποθεσίες διακομιστή


Serverpace.io Servers in AmsterdamΟλλανδία Serverpace.io Servers in MoscowΡωσική Ομοσπονδία Serverpace.io Servers in MinskΛευκορωσία Serverpace.io Servers in United StatesΗνωμένες Πολιτείες
Συγκρίνω
Βαθμολογία - 10
Serverpace.io Logo
Serverpace.io

Serverpace.io

Cloud hosting - Basic
$4.5 /Μηνιαίο


Τοποθεσίες διακομιστή


Serverpace.io Servers in AmsterdamΟλλανδία Serverpace.io Servers in MoscowΡωσική Ομοσπονδία Serverpace.io Servers in MinskΛευκορωσία Serverpace.io Servers in United StatesΗνωμένες Πολιτείες
Συγκρίνω
Βαθμολογία - 9.9
Hosting France Logo
Hosting France

Φιλοξενία της Γαλλίας

Hosting Perso
$3.09 /Μηνιαίο


Τοποθεσίες διακομιστή


Hosting France Servers in FranceΓαλλία
Συγκρίνω
Βαθμολογία - 9.4
Forex Cheap VPS Logo
Forex Cheap VPS

Φτηνές VPS Forex

LITE VPS
$5.99 /Μηνιαίο


Τοποθεσίες διακομιστή


Forex Cheap VPS Servers in United StatesΗνωμένες Πολιτείες
Συγκρίνω
Βαθμολογία - 9.2
AvaHost Logo
AvaHost

AvaHost

Small
$3.17 /Μηνιαίο

18 Κουπόνια

Τοποθεσίες διακομιστή


AvaHost Servers in LondonΗνωμένο Βασίλειο AvaHost Servers in CharlotteΗνωμένες Πολιτείες AvaHost Servers in NetherlandsΟλλανδία
Συγκρίνω
Βαθμολογία - 9.2
Niagahoster Logo
Niagahoster

Νιαγκαχόστερ

Cloud VPS Hosting - Nano
$9.56 /Μηνιαίο


Τοποθεσίες διακομιστή


Niagahoster Servers in United KingdomΗνωμένο Βασίλειο Niagahoster Servers in JakartaΙνδονησία Niagahoster Servers in SingaporeΣιγκαπούρη Niagahoster Servers in United StatesΗνωμένες Πολιτείες
Συγκρίνω
Βαθμολογία - 9.2
ALCHosting Logo
ALCHosting

ALCHosting

TITANIUM
$2.99 /Μηνιαίο


Τοποθεσίες διακομιστή


ALCHosting Servers in Makati CityΦιλιππίνες ALCHosting Servers in ChicagoΗνωμένες Πολιτείες ALCHosting Servers in AmsterdamΟλλανδία ALCHosting Servers in Frankfurt am MainΓερμανία ALCHosting Servers in SingaporeΣιγκαπούρη
Συγκρίνω
Βαθμολογία - 8.9
MyIdealHost Logo
MyIdealHost

MyIdealHost

Starter
$1 /Μηνιαίο

Συγκρίνω
Βαθμολογία - 7.8
Bana Hosting Logo
Bana Hosting

Φιλοξενία Bana

Bana-Starter Deluxe
$4.95 /Μηνιαίο


Τοποθεσίες διακομιστή


Bana Hosting Servers in DanburyΗνωμένες Πολιτείες Bana Hosting Servers in AmsterdamΟλλανδία Bana Hosting Servers in United KingdomΗνωμένο Βασίλειο
Συγκρίνω

Το Perl είναι μια ερμηνευμένη γλώσσα και σημαίνει Πρακτική Εξαγωγή και Γλώσσα Αναφοράς (γλώσσα για πρακτική εξαγωγή δεδομένων και αναφορά).

 

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

 

 

what is perl hosting

 

Το Perl είναι ένα εξαιρετικό εργαλείο για επικοινωνία με διακομιστές Ιστού μέσω του Common Gateway Interface (CGI), μιας κοινής διεπαφής επικοινωνίας.

Οι εντολές Perl μπορούν εύκολα να λάβουν δεδομένα από μια φόρμα HTML ή άλλη πηγή και να κάνουν κάτι μαζί της.

 

Perl Hosting

 

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

 

Η παροχή φιλοξενίας για την Perl δεν απαιτεί ειδικές λειτουργίες. Η φιλοξενία με δυνατότητα Perl λειτουργεί με δύο τρόπους - CGI ή mod_perl. Η γλώσσα χαρακτηρίζεται από την ταχύτητα και την αξιοπιστία της. Οι διανομές Perl είναι διαθέσιμες για όλες τις πλατφόρμες. Εάν το θεωρήσουμε σε πολλά υποσχόμενη κατεύθυνση, τότε όλες οι ελπίδες συνδέονται με την κυκλοφορία της έκτης έκδοσης της γλώσσας. Επίσης, η προοπτική είναι η χρήση σύγχρονων πλαισίων Perl, για παράδειγμα, Catalyst.

 

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

 

Το Perl είναι μια γλώσσα προγραμματισμού που ονομάζεται Perl, η οποία σας επιτρέπει να δημιουργείτε δυναμικές ιστοσελίδες όπως πίνακες ανακοινώσεων.

 

Η Perl είναι μια γλώσσα προγραμματισμού που χρησιμοποιεί τον μηχανισμό του CGI σε έναν διακομιστή ιστού. Εκτελώντας ένα πρόγραμμα γραμμένο σε γλώσσα Perl, μπορεί να ξεκινήσει το CGI και να δημιουργηθεί μια δυναμική ιστοσελίδα.

 

Το Perl είναι μια τεχνολογία διακομιστή που, σε αντίθεση με το JavaScript, θα εκτελείται στον διακομιστή.

 

Θα πρέπει να σημειωθεί ότι εάν το CGI τεθεί εκτός ελέγχου στον διακομιστή ενοικίασης (κοινόχρηστος διακομιστής) και ο διακομιστής τερματιστεί, ενδέχεται να προκύψουν περιορισμοί χρήσης.

 

CGIείναι μια συντομογραφία για το [Common Gateway Interface], το οποίο είναι ένα πρόγραμμα διακομιστή που δημιουργεί δυναμικές ιστοσελίδες όπως πίνακες ανακοινώσεων και συνομιλίες. Χρησιμοποιώντας το CGI, μπορείτε να δημιουργήσετε δυναμικές ιστοσελίδες χρησιμοποιώντας γλώσσες προγραμματισμού όπως Ruby, Python και Perl. Μπορείτε να δημιουργήσετε έναν αρχικό μετρητή πρόσβασης ή ένα καλάθι αγορών και να το δημοσιεύσετε στον ιστότοπο. Αυτή τη στιγμή χρησιμοποιείται από πολλούς διακομιστές ιστού. Το CGI μπορεί να χρησιμοποιηθεί σε οποιαδήποτε γλώσσα, συμπεριλαμβανομένων των Perl, Ruby και C, αλλά η πιο δημοφιλής είναι η γλώσσα Perl.

 

Ιστορικό φιλοξενίας Perl

 

Το Perl είναι μια συντομογραφία για [Πρακτική Εξαγωγή και Γλώσσα Αναφορών], η οποία είναι μια γλώσσα προγραμματισμού που μπορεί να εκτελεστεί σε πολλές πλατφόρμες όπως το UNIX OS και το λειτουργικό σύστημα Windows. Η γλώσσα αναπτύχθηκε από τον Larry Wall το 1987. Χρησιμοποιείται ευρέως ως γλώσσα προγραμματισμού ανάπτυξης για δημιουργία εφαρμογών ιστού, διαχείριση συστήματος, επεξεργασία κειμένου κ.λπ. Συγκεκριμένα, υπερέχει στην επεξεργασία αρχείων όπως η αναζήτηση κειμένου και η εξαγωγή. Ο Perl ανήκει στη γλώσσα scripting μεταξύ των γλωσσών προγραμματισμού.

 

Μια γλώσσα δέσμης ενεργειών είναι ένας γενικός όρος για έναν τύπο γλώσσας προγραμματισμού που ερμηνεύει και εκτελεί ένα πρόγραμμα που είναι σχετικά εύκολο να γραφτεί και να εκτελεστεί όπως ένα σενάριο. Επιπλέον, ένα από τα χαρακτηριστικά του γραπτού προγράμματος είναι ότι η διαδικασία έως την εκτέλεση απλοποιείται και το αποτέλεσμα μπορεί να εξέλθει αμέσως. Οι γνωστές γλώσσες δέσμης ενεργειών περιλαμβάνουν JavaScript, Perl, Python, PHP και Ruby. Το Perl διανέμεται δωρεάν ως GPL (The GNU General Public License: άδεια λογισμικού = άδεια δωρεάν λογισμικού).

 

Η σημειογραφία του Perl είναι παρόμοια με τη C, αλλά ενσωματώνει τις εξαιρετικές δυνατότητες του C και άλλων γλωσσών προγραμματισμού όπως σενάρια, awk και shell Δεδομένου ότι είναι ένας τύπος διερμηνέα που δεν απαιτεί επεξεργασία συλλογής (μετατροπή σε μορφή που μπορεί να εκτελεστεί σε υπολογιστή), μπορεί να εκτελεστεί αμέσως μετά τη σύνταξη ενός προγράμματος.

Είναι ικανό για επεξεργασία υψηλής ταχύτητας ακόμη και σε γλώσσες scripting και έχει υψηλή συμβατότητα προς τα πίσω (συμβατότητα με παλαιότερες εκδόσεις).

 

Μπορείτε επίσης να προσθέσετε νέες λειτουργίες ως ενότητα. Για παράδειγμα, Benchmark, base, Encode, utf8, file :: Basename, File: Copy, File: Path, File: Spec, File: Temp, Net: FTP, Scalar: Util, Storable, Sys: Μπορεί να ειπωθεί ότι είναι επίσης ένα μεγάλο χαρακτηριστικό ότι υπάρχουν πολλές ενότητες που μπορούν να χρησιμοποιηθούν ως στάνταρ, όπως Hostname, Time: Piece, FindBin κ.λπ.

 

Είναι επίσης πολλαπλής πλατφόρμας και μπορεί να εκτελεστεί σε περισσότερους τύπους διακομιστών, συμπεριλαμβανομένων λειτουργικών συστημάτων τύπου UNIX, λειτουργικών συστημάτων που βασίζονται σε Windows, Mac OS, Linux OS και διακομιστών ιστού όπως Apache και IIS.

 

Εκτός αυτού, ο προγραμματιστής είπε ότι εκτός από την Πρακτική Εξαγωγή και Γλώσσα Αναφορών, που σημαίνει "πρακτική γλώσσα δημιουργίας αναφορών απόκτησης δεδομένων", έχει επίσης την κρυφή έννοια του παθολογικά εκλεκτικού απορριμμάτων Lister, "παθολογικά τραγική συσκευή εξόδου σκουπιδιών."

 

Πώς λειτουργεί το web hosting CGI στο Perl;

 

Ο όρος CGI προέρχεται από το Common Gateway Interface. Είναι απλώς ένας άλλος προσδιορισμός για αυτό που γνωρίζουμε ως API (Application Programming Interface). Περίληψη της ιστορίας, το CGI είναι απλώς ένα API για τον διακομιστή ιστού.

 

Ο διακομιστής Ιστού, με τη σειρά του, είναι το λογισμικό που στέλνει ιστοσελίδες σε προγράμματα περιήγησης ιστού (προγράμματα περιήγησης όπωςInternet ExplorerήNetscape). Τεχνικά, τα προγράμματα περιήγησης θα πρέπει να ονομάζονται webΟι πελάτες και τα άτομα που τα χρησιμοποιούν θα πρέπει να ονομάζονται προγράμματα περιήγησης.

 

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

 

Το CGI δεν είναι γλώσσα προγραμματισμού: αυτό σημαίνει ότι μπορείτε να χρησιμοποιήσετε οποιαδήποτε γλώσσα της επιλογής σας για να γράψετε ένα πρόγραμμα CGI. Είναι σαφές ότι η επιλεγμένη γλώσσα πρέπει να είναι σε θέση να διαβάσει μια «είσοδο» και να γράψει μια «έξοδο». Γνωρίζετε κάποια γλώσσα προγραμματισμού που δεν προσφέρει τέτοιες δυνατότητες;

 

Δεν χρειάζεστε τη γλώσσα Perl. Το Perl μπορεί να χρησιμοποιηθεί όπως και οποιαδήποτε άλλη γλώσσα, όπως PHP, C, Phyton, Object Pascal κ.λπ. Δεν είναι μόνο για ειδικούς στα συστήματα Unix. Στην πραγματικότητα, δεν χρειάζεται να είναι ειδικός, οι βασικές δεξιότητες προγραμματισμού είναι περισσότερες από αρκετές.

 

Δεν είναι στυλ προγραμματισμού. Χρησιμοποιήστε το δικό σας στυλ, γιατί μόνο με το "input" και το "output" μπορούμε να κάνουμε τον web server να "συνομιλήσει" με το CGI.

Ακούγεται σαν αστείο, αλλά ένας διακομιστής Ιστού περιμένει - εκτός εάν η πρόσβαση στον ιστότοπο γίνεται μαζικά.

 

Αυτό που περιμένει ο διακομιστής ιστού δεν είναι τίποτα περισσότερο από έναν πελάτη, ένα πρόγραμμα περιήγησης που ζητά ένα αρχείο. Αυτό το αρχείο μπορεί να είναι σελίδα HTML, γραφικό ή οποιοσδήποτε άλλος τύπος αρχείου.

 

Όταν ο διακομιστής ιστού λαμβάνει ένα αίτημα, εκτελεί τρεις εργασίες με την ακόλουθη σειρά:


  • Στείλτε μια γραμμή ρηχού κειμένου που περιέχει τον τύπο αρχείου που θα σταλεί, δηλαδή HTML, GIF, JPEG ή οποιοδήποτε άλλο.

  • Στείλτε μια κενή γραμμή.

  • Στέλνει τα περιεχόμενα του αρχείου.

 

Πώς στέλνει τα αρχεία ο διακομιστής Web;

 

Ενα κάθε φορά. Εκπληκτικά, μόνο ένα.

 

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

 

Ο διακομιστής Ιστού μπορεί να στέλνει αρχεία μόνο;

 

Οχι απαραίτητα. Στην πραγματικότητα, αυτό που συμβαίνει είναι απλώς μια μεταφορά δεδομένων. Θυμηθείτε ότι ο διακομιστής και ο πελάτης (το πρόγραμμα περιήγησης) εκτελούνται συνήθως σε διαφορετικούς υπολογιστές. Μπορούν ακόμη και να χρησιμοποιούν διαφορετικά λειτουργικά συστήματα σε μηχανήματα με διαφορετικούς μικροεπεξεργαστές. Το πρόγραμμα περιήγησης ζητά μόνο έναν "πόρο" και δεν γνωρίζει, ούτε χρειάζεται να γνωρίζει, από πού λαμβάνει ο διακομιστής τα δεδομένα.

 

Ωστόσο, ένας τυπικός διακομιστής προγραμματίζεται για τη λήψη των δεδομένων του από ένα αρχείο. Διαβάζει απλώς τα δεδομένα από το αρχείο και τα διαβιβάζει στον πελάτη. Ως αποτέλεσμα αυτής της διαδικασίας, ο διακομιστής στέλνει μόνο στατικά δεδομένα, δηλαδή, ο διακομιστής δεν αλλάζει δυναμικά τα δεδομένα που αποστέλλονται.

 

Τι να κάνετε για να στείλετε δυναμικά δεδομένα;

 

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

 

Με αυτόν τον τρόπο ένα πρόγραμμα CGI επεκτείνει τη λειτουργικότητα ενός διακομιστή, με τον ίδιο τρόπο που, για παράδειγμα, ένα DLL επεκτείνει τη λειτουργικότητα των Windows. Αλλά υπάρχει μια μεγάλη διαφορά: το CGI είναι πολύ πιο απλό να γράψει από οτιδήποτε άλλο για τα Windows.

 

Αλλά, πώς να μιλήσετε με το πρόγραμμα περιήγησης;

 

Δεν χρειάζεται να μιλήσετε στο πρόγραμμα περιήγησης. Αυτός είναι ο διακομιστής που κάνει αυτή τη δουλειά. Το καλύτερο μέρος του παιχνιδιού είναι ότι δεν χρειάζεται καν να μιλήσετε με τον διακομιστή. Το μόνο που έχετε να κάνετε είναι να γράψετε στην τυπική έξοδο (τυπική έξοδος). Με τον ίδιο τρόπο, όπως, για παράδειγμα, χρησιμοποιείτε το printf () από τη γλώσσα C.

 

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

 

Είπαμε παραπάνω ότι μπορείτε να χρησιμοποιήσετε το δικό σας στυλ. Λοιπόν, έλα: ας υποθέσουμε ότι ο διακομιστής σας λειτουργεί κάτω από το DOS. Στην πραγματικότητα, δεν υπάρχει τέτοιος διακομιστής, αλλά υπάρχουν διακομιστές Windows και τα Windows μπορούν να ερμηνεύσουν τις εντολές MS-DOS. Επομένως, φανταστείτε ότι θέλετε να στείλετε μια λίστα με τον τρέχοντα κατάλογό σας στον Ιστό (όχι καλή ιδέα, αλλά δείχνει πόσο απλή είναι αυτή η εργασία). Το MS-DOS έχει επίσης την άμεση εντολή που στέλνει τη λίστα καταλόγων σε τυπική έξοδο. Έτσι, θεωρητικά, θα μπορούσαμε να δημιουργήσουμε το ακόλουθο σενάριο:

 

1. Εργασία: προσδιορίστε τον τύπο δεδομένων που θα σταλούν:

2. Εργασία: αποστολή κενής γραμμής:

3. Εργασία: αποστολή του περιεχομένου:

 

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

 

Πώς να λάβετε πληροφορίες;

 

Πρώτα απ 'όλα, πρέπει να είναι πολύ σαφές ότι ο ιστός δεν είναι διαδραστικός. Αυτό σημαίνει ότι το πρόγραμμα CGI δεν μπορεί να ζητήσει εισόδους από χρήστες, να τους επεξεργαστεί, να στείλει κάποια αποτελέσματα (έξοδος), να ζητήσει άλλη είσοδο κ.λπ.

 

Γι 'αυτό ακριβώς ο προγραμματισμός ενός CGI είναι πολύ απλός. Το πρόγραμμα λαμβάνει είσοδο από τον χρήστη μόνο μία φορά, ακριβώς στην αρχή και στέλνει μόνο μία απάντηση (έξοδος).Ωστόσο, τόσο η είσοδος όσο και η απόκριση μπορεί να έχουν οποιοδήποτε μέγεθος και πολυπλοκότητα, ανάλογα με το τι μπορεί να έχει το πρόγραμμά σας.

 

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

 

Πού βρίσκει το πρόγραμμα περιήγησης τον χρήστη;

 

Το πρόγραμμα περιήγησης δέχεται είσοδο χρησιμοποιώντας φόρμες HTML. Μια φόρμα μπορεί να δώσει εντολή στο πρόγραμμα περιήγησης να στείλει δεδομένα χρησιμοποιώντας δύο μεθόδους: GET και POST.

 

Η μέθοδος GET στέλνει τις καταχωρήσεις ως μέρος του URL. Η μέθοδος POST στέλνει τις καταχωρήσεις ως stdin. Η δεύτερη μέθοδος φαίνεται να έχει κάποια πλεονεκτήματα:


  • Είναι δυνατή η αποστολή περισσότερων δεδομένων (η διεύθυνση URL έχει όριο μεγέθους).

  • Τα δεδομένα δεν καταγράφονται σε αρχεία καταγραφής. Για παράδειγμα: η αποστολή κωδικού πρόσβασης ως μέρος μιας διεύθυνσης URL αφήνει ίχνη στα διάφορα συστήματα στα οποία περνούν τα δεδομένα!

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

 

Πώς ξέρω ποια μέθοδος χρησιμοποιείται;

 

Ο διακομιστής Ιστού, πριν από τη φόρτωση του προγράμματος CGI, αρχικοποιεί ορισμένες μεταβλητές περιβάλλοντος. Μπορείτε να αναλύσετε αυτές τις μεταβλητές για να μάθετε την ποσότητα και την πηγή των δεδομένων εισαγωγής.

Μία από τις μεταβλητές περιβάλλοντος είναι REQUEST_METHOD. Η τιμή του μπορεί να είναι POST, GET και, τελικά, HEAD.

 

Εάν το REQUEST_METHOD δηλώνει POST, η μεταβλητή CONTENT_LENGTH θα υποδείξει πόσα byte δεδομένων πρέπει να διαβαστούν μέσω του stdin και η μεταβλητή CONTENT_TYPE θα δείξει ότι τα δεδομένα προέρχονται από μια φόρμα (ή πιθανώς από κάποια άλλη πηγή).

 

Μόλις ληφθούν τα δεδομένα (διαβάζεται από τον διακομιστή), μπορεί να υποβληθεί σε άμεση επεξεργασία και η απάντηση (έξοδος) να αποσταλεί μέσω ενός stdout. Η απάντηση γράφεται συνήθως με τη μορφή δεδομένων HTML, με όλες τις απαραίτητες μορφοποιήσεις. Ωστόσο, τα προγράμματα CGI μπορούν να παράγουν κάθε τύπο απόκρισης, όπως ένα αρχείο GIF ή οτιδήποτε άλλο.

 

Αυτός είναι ο λόγος για τον οποίο πρέπει να υποδείξετε στο πρόγραμμα περιήγησης, στα πρώτα 2 στάδια της μετάδοσης, τον τύπο των δεδομένων που θα σταλούν. Μπορούμε να αναγνωρίσουμε δεδομένα HTML στέλνοντας τη συμβολοσειρά τύπου περιεχομένου: text / Html (εργασία 1) ακολουθούμενη από μια κενή συμβολοσειρά (εργασία 2). Χρησιμοποιώντας τη γλώσσα C θα ήταν printf ("Content-type: text / Html \ n \ n"); όπου \ n είναι μια αλλαγή γραμμής και η δεύτερη \ n μια άλλη αλλαγή γραμμής για να υποδείξει την κενή γραμμή.