Kiszolgáló helyei
Kiszolgáló helyei
Kiszolgáló helyei
Kiszolgáló helyei
Kiszolgáló helyei
Kiszolgáló helyei
Kiszolgáló helyei
Kiszolgáló helyei
Kiszolgáló helyei
Kiszolgáló helyei
Kiszolgáló helyei
Kiszolgáló helyei
Vélemények 1925
Kiszolgáló helyei
A Perl értelmezett nyelv, és a Gyakorlati kivonat és Jelentésnyelv (a gyakorlati adatok kinyerésének és jelentésének a nyelve) rövidítése.
A Perl segítségével például létrehozhat egy szkriptet, amely egy vagy több fájlt megnyit, információt feldolgoz és megírja az eredményeket.
A Perl nagyszerű eszköz a webkiszolgálókkal való kommunikációhoz a Common Gateway Interface (CGI), egy közös kommunikációs felületen keresztül.
A Perl-parancsok könnyen megszerezhetnek adatokat egy HTML-űrlapból vagy más forrásból, és tehetnek vele valamit.
Perl Hosting
Egy másik programozási nyelv, amely nemcsak a múltban volt népszerű, de a webfejlesztők ma is használják, a Perl. A nyelv neve jelentése: "gyakorlati nyelv az adatok kinyerésére és jelentésére". A Perl bőséges lehetőséget kínál tömör és hatékony alkalmazások, rendszerprogramok fejlesztésére.
A Perl számára tárhely biztosítása nem igényel különösebb funkciókat. A Perl-kompatibilis tárhely kétféleképpen működik - CGI vagy mod_perl. A nyelvet gyorsasága és megbízhatósága jellemzi. A Perl disztribúciók minden platformon elérhetők. Ha ígéretes irányba vesszük, akkor minden remény a nyelv hatodik változatának kiadásával jár. Lehetséges a modern Perl-keretrendszerek, például a Catalyst használata.
Ennek a programozási nyelvnek a jellemzője a CPAN modul könyvtár, amely minden tárhely felhasználó számára közös. Nagy mennyiségű dokumentációt és szoftvert tartalmaz. A Perl tárhely minősége és teljesítménye ettől a tartalomtól függ.
A Perl egy Perl nevű programozási nyelv, amely lehetővé teszi dinamikus weboldalak, például hirdetőtáblák létrehozását.
A Perl egy programozási nyelv, amely a CGI mechanizmusát használja egy webszerveren. A Perl nyelven írt program futtatásával elindítható a CGI és létrehozható egy dinamikus weboldal.
A Perl egy szerveroldali technológia, amely a JavaScript-sel ellentétben a szerveren fog futni.
Meg kell jegyezni, hogy ha a CGI elfogy az ellenőrzés alatt a bérelt kiszolgálón (megosztott szerver), és a kiszolgáló leáll, felhasználási korlátozások léphetnek fel.
CGIa [Common Gateway Interface] rövidítése, amely egy szerveroldali program, amely dinamikus weboldalakat hoz létre, például hirdetőtáblákat és csevegéseket. A CGI használatával dinamikus weboldalakat hozhat létre olyan programozási nyelvek segítségével, mint a Ruby, a Python és a Perl. Létrehozhat eredeti hozzáférési pultot vagy bevásárlókosarat, és közzéteheti azt a weboldalon. Jelenleg sok webszerver használja. A CGI bármilyen nyelven használható, beleértve a Perl, Ruby és C nyelvet is, de a legnépszerűbb a Perl nyelv.
Perl tárhely háttér
A Perl a [Practical Extraction and Report Language] rövidítése, amely olyan programozási nyelv, amely számos platformon futtatható, például UNIX OS és Windows OS. A nyelvet Larry Wall fejlesztette ki 1987-ben. Széles körben használják fejlesztési programozási nyelvként webalkalmazások készítéséhez, rendszerkezeléshez, szövegfeldolgozáshoz stb. Különösen a fájlok feldolgozásában, például a szöveges keresésben és a kibontásban jeleskedik. A Perl a programozási nyelvek közé tartozik a szkriptnyelvben.
A szkriptnyelv egy olyan programozási nyelv általános elnevezése, amely értelmezi és futtatja a programot, amelyet viszonylag könnyű írni és futtatni, mint egy szkriptet. Ezenkívül az írott program egyik jellemzője, hogy az eljárás a végrehajtásig leegyszerűsödik, és az eredmény azonnal kimenetre kerülhet. Az ismert szkriptnyelvek közé tartozik a JavaScript, a Perl, a Python, a PHP és a Ruby. A Perl-t ingyenesen terjesztik GPL néven (The GNU General Public License: software license = free software license).
Perl jelölése hasonló a C-hez, de magában foglalja a C és más programozási nyelvek, például a sed, az awk és a shell szkriptek nagyszerű tulajdonságait. Mivel olyan tolmács típusról van szó, amely nem igényel fordítási feldolgozást (konvertálás számítógépen futtatható formátumra), a program megírása után azonnal végrehajtható.
Nagy sebességű feldolgozásra képes még szkript nyelveken is, és nagy a visszamenőleges kompatibilitása (kompatibilitás a régebbi verziókkal).
Új funkciókat modulként is felvehet. Például: Benchmark, base, Encode, utf8, file :: Basename, File: Copy, File: Path, File: Spec, File: Temp, Net: FTP, Scalar: Util, Storeable, Sys: Elmondható, hogy ez nagy jellemzője az is, hogy sok modul használható alapkivitelben, mint például a Hostname, Time: Piece, FindBin stb.
Ez szintén platformokon átívelő, és a legtöbb típusú szerveren futtatható, beleértve a UNIX-szerű operációs rendszereket, a Windows-alapú operációs rendszereket, a Mac OS, a Linux OS-t és az olyan webszervereket, mint az Apache és az IIS.
Mellékesen a fejlesztő elmondta, hogy a gyakorlati kivonási és jelentésnyelv mellett, amely "gyakorlati adatgyűjtési jelentés készítésének nyelvét" jelenti, a patológiásan eklektikus szemétlister rejtett jelentése is van, "kórosan súlyos selejtes kimeneti eszköz".
Hogyan működik a CGI webtárhely Perlben?
A CGI kifejezés a Common Gateway Interface-ből származik. Ez csak egy újabb megnevezés az általunk ismert API-nak (Application Programming Interface). Összefoglalva a történetet, a CGI csak egy API a webszerverhez.
A webszerver viszont az a szoftver, amely weblapokat küld webböngészőkhöz (olyan böngészőkhöz, mint plinternet böngészővagyNetscape). Technikailag a böngészőket webnek kell nevezniaz ügyfeleket és az őket használó embereket böngészőknek kell nevezni.
Nagyon sok információ található a CGI-ről az interneten, azonban legtöbbször nem egyezik, tele van mítoszokkal és előítéletekkel. Tisztázzunk néhány kétséget azzal, hogy közöljük, mi nem a CGI.
A CGI nem programozási nyelv: ez azt jelenti, hogy bármelyik általad választott nyelvet használhatja CGI-program megírásához. Nyilvánvaló, hogy a választott nyelvnek képesnek kell lennie egy "input" és egy "output" írására. Ismer olyan programozási nyelvet, amely nem kínál ilyen lehetőségeket?
Nem kell a Perl nyelv. A Perl ugyanúgy használható, mint bármely más nyelv, például a PHP, C, Phyton, Object Pascal stb. Ez nem csak a Unix rendszerek szakértőinek szól. Valójában nincs szükség szakértőre, az alapvető programozási ismeretek több mint elegendőek.
Ez nem programozási stílus. Használja a saját stílusát, mert csak "input" és "output" esetén tudjuk a webszervert "csevegni" a CGI-vel.
Viccnek hangzik, de a webszerver csak vár - hacsak nem látogatják tömegesen az oldalt.
Amire a webszerver vár, az nem más, mint egy kliens, egy böngésző, amely fájlt kér. Ez a fájl lehet HTML oldal, grafika vagy bármilyen más típusú fájl.
Amikor a webszerver kérést kap, három feladatot hajt végre a következő sorrendben:
Küldjön egy sekély szöveges sort, amely tartalmazza az elküldendő fájltípust, azaz HTML, GIF, JPEG vagy bármilyen más fájlt;
Küldjön egy üres sort;
Elküldi a fájl tartalmát.
Hogyan küld fájlokat a webszerver?
Egyenként. Elképesztően csak egy.
Tudjuk, hogy egy tipikus weboldal HTML dokumentumból és néhány grafikából áll. Mindegyik egy másik fájl, amelyet el kell küldeni a böngészőnek. Mivel a webszerver egyszerre csak EGY fájlt küld, a böngészőnek új munkamenetet (kérést) kell indítania a szükséges fájlok mindegyikéhez. Szerencsére mind a webszerver, mind a böngésző többfeladatos. A böngésző egyszerre több fájlt is kérhet, a webszerver pedig egyszerre több fájlt is küldhet, azonban a kért-elküldött fájlok mindegyikéhez külön munkamenet szükséges.
A webszerver csak fájlok küldésére képes?
Nem feltétlenül. Valójában ami történik, az csak adatátvitel. Ne feledje, hogy a szerver és az ügyfél (a böngésző) általában különböző számítógépeken fut. Még különböző operációs rendszereket is használhatnak különböző mikroprocesszoros gépeken. A böngésző csak "erőforrást" kér, és nem tudja, és nem is kell tudnia, honnan veszi a szerver az adatokat.
Egy tipikus kiszolgáló azonban be van programozva, hogy az adatokat fájlból szerezze be. Egyszerűen elolvassa az adatokat a fájlból és továbbítja az ügyfélnek. Ennek a folyamatnak a eredményeként a szerver csak statikus adatokat küld, vagyis a kiszolgáló nem változtatja meg dinamikusan az elküldött adatokat.
Mit kell tenni a dinamikus adatok küldéséhez?
Egyáltalán nem nehéz. A CGI-t pontosan ennek a funkciónak a teljesítésére tervezték. Egyszerűen megír egy programot, amely dinamikusan állítja elő az adatokat, és ezeket az adatokat fájl helyett a böngészőbe küldi.
A CGI program így terjeszti ki a szerver funkcionalitását, ugyanúgy, mint például egy DLL a Windows funkcionalitását. De van egy nagy különbség: A CGI-t sokkal egyszerűbb írni, mint bármi más a Windows számára.
De hogyan beszéljünk a böngészővel?
Nem kell beszélni a böngészővel. A szerver végzi ezt a munkát. A játék legjobb része az, hogy nem is kell beszélned a szerverrel. Csak annyit kell tennie, hogy írjon a standard kimenetre (standard kimenet). Ugyanúgy, mint például a printf () -t használja a C nyelvből.
Az egyetlen dolog, amit nem szabad szem elől téveszteni, a szerver által a fent említett adatátvitel során végrehajtott három feladat sorrendje. Mivel a szerver nem tudja, hogy milyen típusú adatokat fog küldeni, ezeket az információkat a standard kimenethez kell megadnia.
Fentebb elhangzott, hogy használhatja saját stílusát. Nos, tessék: tegyük fel, hogy a szerver DOS alatt fut. Ami azt illeti, nincs ilyen szerver, de vannak Windows szerverek, és a Windows képes értelmezni az MS-DOS parancsokat. Tehát képzelje el, hogy el akarja küldeni az aktuális könyvtárának listáját az internetre (nem jó ötlet, de ez megmutatja, hogy ez a feladat mennyire egyszerű). Az MS-DOS rendelkezik egy közvetlen paranccsal is, amely elküldi a könyvtárlistát a standard kimenetre. Tehát elméletileg a következő szkriptet állíthatnánk elő:
1. Feladat: a küldendő adatok típusának meghatározása:
2. Feladat: küldjön egy üres sort:
3. Feladat: küldje el a tartalmat:
A fenti példa csak egy szimuláció arra vonatkozóan, hogy a CGI szkript hogyan működik olyan elemekkel, amelyekről a legtöbb ember tud. Csak azért idézték, hogy megértsék a kimenet elvét, és hogy ne működjenek. Most még egy lépés ...
Hogyan juthatunk hozzá?
Először is nagyon világosnak kell lennie, hogy a web nem interaktív. Ez azt jelenti, hogy a CGI programja nem kérhet bemeneteket a felhasználóktól, feldolgozhatja azokat, nem küldhet eredményeket (outputokat), nem kérhet újabb bemenetet stb.
Pontosan ezért nagyon egyszerű a CGI programozása. A program csak egyszer, közvetlenül az elején fogadja a felhasználótól a bemenetet, és csak egy választ (kimenetet) küld.Mindazonáltal mind a bemenet, mind a válasz bármilyen méretű és összetettségű lehet, attól függően, hogy milyen programot tartalmazhat.
Ez azt jelenti, hogy tudnia kell, hogy a program kétféleképpen fogadhatja a felhasználói adatokat, attól függően, hogy a böngésző milyen módszerrel küldi el a szerverre.
Hol találja meg a böngésző a felhasználói bevitelt?
A böngésző HTML-űrlapok segítségével fogadja a bevitelt. Az űrlap két módszerrel utasíthatja a böngészőt az adatok küldésére: GET és POST.
A GET metódus az URL részeként küldi a bejegyzéseket. A POST metódus a bejegyzéseket stdin néven küldi. Úgy tűnik, hogy a második módszer bizonyos előnyökkel jár:
Lehetőség van további adatok küldésére (az URL-nek méretkorlátja van);
Az adatokat naplófájlok nem rögzítik. Például: ha jelszót küld egy URL részeként, nyomot hagy a különféle rendszereken, amelyeken az adatok átjutnak!
Az adatok nem jelennek meg a böngésző címsorában. Ismét előfordulhat, hogy a jelszó megjelenítése a böngészőben nem tetszik a felhasználónak.
Honnan tudom, hogy melyik módszert alkalmazzák?
A webszerver a CGI program betöltése előtt inicializál néhány kontextusváltozót. Elemezheti ezeket a változókat, hogy ismerje a bemeneti adatok mennyiségét és forrását.
Az egyik kontextusváltozó a REQUEST_METHOD. Értéke lehet POST, GET és végül HEAD.
Ha a REQUEST_METHOD a POST értéket jelzi, a CONTENT_LENGTH változó azt jelzi, hogy hány bájt adatot kell elolvasni az stdin-en keresztül, a CONTENT_TYPE változó pedig azt jelzi, hogy az adatok egy űrlapból (vagy esetleg valamilyen más forrásból) származnak.
Miután az adatokat megkapta (a szerver elolvasta), azonnal feldolgozható, és a válasz (kimenet) stdout-on keresztül elküldhető. A választ általában HTML adatok formájában írják meg, minden szükséges formázással. De a CGI programok bármilyen típusú választ adhatnak, például GIF fájlt vagy bármi mást.
Ez az oka annak, hogy a továbbítás első 2 szakaszában meg kell adnia a böngészőnek a küldendő adatok típusát. A HTML-adatokat úgy tudjuk azonosítani, hogy elküldjük a Content-type string: text / Html (1. feladat), majd egy üres karakterláncot (2. feladat). A C nyelvet használva ez a printf ("Tartalomtípus: text / Html \ n \ n") lenne; ahol \ n egy sortörés, a második \ n pedig egy másik sortörés az üres sor jelzésére.