Mkdir/usr/src/temp
CD/USR/SRC/TEMP
gzip ´d stable.tar.gzip
TAR XVL Stable.tar
CD Perl-5.6.0
rm -f config.sh polycy.sh
SH Configure -de
menyusun
Melakukan tes
Buat instal
Apa itu cgi = https://homepages.dcc.ufmg.br/~mlbc/cursos/internet/cgi/intro.htm
CGI Melayani Halaman Web (html) = http://devfuria.com.br/miscellouse/cgi-common-gateway-interface/
Apa itu CGI/Formatting Forms CGI = http://penta.ufrgs.br/edu/forms/cgi.html
Sumber Daya CGI ke Java dan JavaScript = http://penta.ufrgs.br/pesquisa/joice/cap4.html
CGI sangat mudah/menulis skrip CGI untuk memproses formulants di web = https://www.jmarshall.com/easy/cgi/portugues/
CGI - Antarmuka Gateway Umum = https://web.fe.up.pt/~goii2000/m9/cgi.htm
Variabel lingkungan IBM dalam skrip CGI (referensi) = https://www.ibm.com/docs/en-r/netcoolomnibus/8.1?topic=ssshtq_8.1.0/com.ibm.netcool_omnibus.doc_8.1.0/webtop/wip.reference/web_cust_envaria
CGI - tcl/tk bahasa = http://www.c2o.pro.br/automacao/ar01s14.html
CGI Forms = http://penta.ufrgs.br/edu/forms/cgi.html
Tutorial CGI = https://www.w3.org/cgi/
Common Gateway Interface (CGI) = https://en.wikipedia.org/wiki/Common_gateway_interface
CGI (Wikipedia) = https://en.wikipedia.org/wiki/cgi
CGI Pendahuluan = http://homepages.dcc.ufmg.br/~mlbc/cursos/internet/cgi/intro.htm
Apa itu CGI (Common Gateway Interface) dan apa fungsinya? Common Gateway Interface (CGI) adalah teknologi yang memungkinkan Anda untuk menghasilkan halaman dinamis dengan interaksi skrip server HTTP dengan skrip dan program gateway melalui parameter. Jadi skrip CGI adalah program kecil yang menafsirkan parameter ini dan menghasilkan halaman setelah memprosesnya.
Tetapi penggunaan CGI tidak terlalu aman, ingatlah bahwa beberapa tindakan pencegahan keamanan harus diambil. Di bawahnya akan dibahas apa yang harus diambil oleh tindakan pencegahan keamanan berdasarkan beberapa aturan program CGI setelah menjelaskan bagaimana CGI bekerja.
Bagaimana cara kerjanya? Contoh:
Klien (browser) meminta URL dari URL yang diminta untuk CGI, sehingga server melakukan CGI CGI bekerja berinteraksi dengan aplikasi sistem lain, memulihkan data dari aplikasi ini dan mengembalikan hasilnya ke server server mengirim data ke pelanggan, yang memformat hasilnya dan menyajikan pengguna untuk memasukkan deskripsi gambar di sini.
Mengapa Menggunakan CGI? Dengan CGI, server Anda dapat mengakses informasi yang tidak dengan cara yang dapat dibaca kepada pelanggan (misalnya SQL Database), dan bertindak sebagai gerbang di antara mereka untuk menghasilkan sesuatu yang dapat digunakan pelanggan. Gateway dapat digunakan untuk berbagai tujuan, yang paling umum adalah manipulasi ISIndex dan daftar permintaan formulir HTTP.
CONS CONTOH PENGGUNAAN: Konversi halaman manual sistem HTML dan kirim hasil HTML ke pelanggan. Antarmuka dengan database WAIS dan Archie, mengubah hasilnya menjadi HTML dan mengirimkan hasilnya kepada pelanggan. Izinkan pengguna untuk memberi makan server mereka melalui formulir HTML dan dekoder mengikuti CGI. Anda mungkin menulis CGI ini melalui gateway yang dapat ditulis dalam liguage apa pun yang memungkinkan Anda untuk dieksekusi dalam sistem, seperti:
C/C ++ FORTRAN PERL TCL UNIX Shell Visual Basic Apple Script Apa aturan utama program CGI? Program CGI, atau skrip, adalah program yang dapat dieksekusi yang dapat dieksekusi sendiri (yang bukan cara yang aman). Oleh karena itu ada beberapa tindakan pencegahan keamanan yang perlu diterapkan saat menggunakan program CGI.
Aturan utamanya adalah:
Script CGI harus berada di tempat yang ditentukan oleh server untuk skrip CGI atau harus memiliki akhiran khusus, yang dikonfigurasi server untuk dikenali sebagai skrip CGI legal. Sebagian besar sistem menyimpan skrip CGI di direktori root server HTTP yang disebut CGI-bin, yang dikonfigurasi sedemikian rupa sehingga hanya pengguna yang dapat diandalkan tertentu yang dapat merekamnya. Ini menghindari masalah keamanan yang jelas yang muncul dengan memungkinkan pengguna jarak jauh anonim untuk melakukan apa pun dalam sistem. Contoh:/USR/LOCAL/APACHE/HTDOCS/CGI-BIN
Script dapat mengumpulkan parameternya, input default (melalui keyboard), variabel lingkungan atau keduanya.
Script harus diberikan sebagai output, salah satu dari tiga jenis header standar, sebagai string teks normal. Menjadi tiga jenis:
Context_Type: Jenis konten mengacu pada semua jenis data MIME yang diterima oleh server. Jenis umum termasuk teks/html, teks/sederhana dan data/gif. Karena browser/server tidak dapat menyimpulkan jenis file ini dari lokasi nama file atau akhiran, judul ini akan menginformasikan browser apa yang diharapkan oleh jenis data dan bagaimana menggunakannya.
Format: Ketik/Jenis
Lokasi: Menunjuk ke dokumen di tempat lain di server. Memungkinkan Anda untuk mengarahkan permintaan dokumen, berdasarkan beberapa kriteria yang dikirim oleh formulir atau variabel lingkungan.
Status: Dapat digunakan untuk menjalankan skrip tanpa mengirim halaman baru ke pelanggan. Ini juga dapat digunakan untuk mengirim pesan kesalahan atau informasi lain kepada pelanggan.
Skrip harus dapat dieksekusi oleh pengguna yang telah dikonfigurasi server. ;
Rincian keamanan lebih banyak dalam skrip CGI
Bagaimana cara mendapatkan informasi server? Setiap kali pengguna meminta URL yang sesuai dengan program CGI -nya, server akan menjalankannya secara real time. Konsep yang salah tentang CGI adalah Anda dapat mengirim opsi perintah dan argumen opsional untuk program Anda, seperti:
Perintah% myprog -qa blorf
CGI menggunakan baris perintah untuk tujuan lain. Gateway menggunakan variabel lingkungan untuk mengirim parameternya ke program.
Bagaimana cara mengirim dokumen ke pengguna? Program CGI dapat mengembalikan sejumlah besar jenis dokumen. Anda dapat mengembalikan gambar ke pengguna, dokumen HTML, atau mungkin klip audio. Juga dapat merujuk ke dokumen lain.
Pelanggan perlu mengetahui jenis dokumen apa yang akan diterima, sehingga mereka dapat menyajikannya dengan benar. Segera program CGI harus memberi tahu server jenis dokumen apa yang sedang dikirim.
Untuk berkomunikasi ke server jenis dokumen yang kembali, apakah itu dokumen lengkap atau referensi ke yang lain, CGI membutuhkan header kecil di pintu keluar. Header ini adalah teks ASCII, yang terdiri dari garis terpisah atau oleh linerifeed atau dengan carriage return (atau keduanya) diikuti oleh garis kosong.
Contoh:
Dokumen lengkap dengan tipe MIME yang sesuai. Mengirim dokumen HTML ke pelanggan.
Tipe konten: teks/html
<title> output html dari skrip CGI </iteme>Konten-Type: Teks/HTML Lokasi: gopher: //httprules.foobar.org/0
<title> maaf ... dipindahkan </iteme>Satu bentuk dapat berisi berbagai komponen seperti input, kotak centang, dan radio.
Bagaimana cara mendapatkan data formulir? Ada dua metode yang dapat digunakan untuk mengakses formulir, mendapatkan dan memposting. Bergantung pada metode yang digunakan, Anda akan menerima data secara berbeda.
Metode GET: Jika formulir Anda menggunakan metode = "dapatkan", program CGI Anda akan menerima data kode dalam variabel lingkungan Querry_String. Contoh:
Login: Kata Sandi:Metode POST: Jika formulir Anda menggunakan metode = "POST", program CGI Anda akan menerima data input standar STDIN. Server tidak akan mengirim EOF di akhir data. Alih -alih, Anda harus menggunakan variabel lingkungan Content_length untuk menentukan jumlah data yang akan dibaca dari STDIN.
Contoh:
Login: Kata Sandi:Cara membaca variabel lingkungan akan tergantung pada sistem operasi di mana program CGI akan dieksekusi dan bahasa pemrograman di mana ia ditulis. Program C yang berjalan di UNIX dapat menggunakan fungsi char *getEnv (const char *name); yang dinamai variabel sebagai argumen dan mengembalikan nilainya dalam string.
Apakah ini teknologi lama? CGI dikandung sebagai puncak dari diskusi oleh para ahli selama hari -hari awal Internet, pada tahun 1993 oleh Pusat Nasional (untuk aplikasi superkomputer) yaitu antara Rob McCol, John Franks, Ari Lotonen, George Phillips dan Tony Sanders. Apa yang bisa membuatnya dianggap sebagai teknologi lama.
Spesifikasi CGI 1.1: RFC3875
Meskipun bahasa yang biasanya terkait dengan CGI adalah Perl, CGI dikandung agar tidak tergantung pada bahasa yang digunakan. Saat ini teknologi seperti ASP.NET, PHP, Python dan Ruby terus menggunakan spesifikasi.
Apakah ada alternatif lain untuknya (yang mana)? FastCGI: Ini adalah protokol biner untuk interaksi antarmuka dengan server web.
PSGI: Ini adalah antarmuka antara server web dan aplikasi web dan kerangka kerja yang memungkinkan Anda untuk menulis aplikasi yang dapat dilakukan sebagai server otonom atau menggunakan CGI. Rack: Menyediakan antarmuka modular dan mudah beradaptasi untuk pengembangan aplikasi web di Ruby.
WRB: Teknologi server HTTP mirip dengan CGI yang didistribusikan Oracle.
Antarmuka: Elemen yang menyediakan koneksi fisik atau logis antara dua sistem atau bagian sistem yang tidak dapat dihubungkan secara langsung.
Visi Umum Masukkan deskripsi gambar di sini
Secara umum, server HTTP memiliki direktori (folder), yang ditetapkan sebagai kumpulan dokumen (file), yang dapat dikirim ke browser web yang ditautkan ke server ini. Misalnya, jika server web memiliki nama domain example.com, dan koleksi dokumen Anda disimpan di/usr/local/apache/htdocs dalam sistem file lokal, maka server web akan menanggapi pesanan untuk http://exemplo.com/index.html dengan mengirimkan ke browser. File /usr/local/pache/pache.pache.
CGI memperluas sistem ini, memungkinkan pemilik server web untuk menunjuk direktori dalam koleksi dokumen yang berisi skrip yang dapat dieksekusi (atau file biner) alih -alih halaman yang ditentukan, ini dikenal sebagai direktori CGI. Misalnya,/USR/LOCAL/APACHE/HTDOCS/CGI-bin dapat ditetapkan sebagai direktori CGI di server web. Jika browser Web meminta URL yang menunjuk ke file dalam direktori CGI (misalnya, http://exemplo.com/cgi-bin/printenv.pl) alih-alih hanya mengirim file (/usr.local/apache/htdocs/cgi-nin/printenv.pl) ke scripter, twowsput, howsput, howsput, howsput, howsput, howsput, howsput, howsput, howsput, howsput, howsput, howsput, howsput, howsput, howsput, the script, the scripton, the web, outsputs.tdocs/howsputs.tdocs.printen, twowsputs.printen, twowsputs.printen, browser web. Artinya, apa pun skrip mengirimkan output default diteruskan ke pelanggan web alih -alih ditampilkan di layar di jendela terminal.
Struktur umum skrip CGI: pembacaan data dan decoding (dan/atau bidang informasi dari paket HTTP);
Pemrosesan data (catatan informasi tentang database, lakukan perhitungan, memulihkan data);
Pembuatan halaman web dengan hasil yang dihasilkan.
Contoh pemrosesan data aplikasi CGI yang dikirimkan melalui formulir;
Berfungsi sebagai antarmuka dengan database, mengonversi transaksi HTML ke SQL dan memformat ke HTML jawaban yang diperoleh, kemudian mengirim hasilnya kepada pelanggan;
Konversi data sistem ke HTML dan kembalikan hasilnya kepada pelanggan;
Pembuatan dokumen yang dipersonalisasi;
Mengelola penghitung akses;
Pemrosesan peta.
Metode Transmisi Protokol HTTP menggunakan berbagai penanganan data dan metode organisasi. Dua metode yang paling umum digunakan untuk mengirimkan data formulir adalah GET dan POST. Kedua metode mentransfer data dari browser ke server, perbedaan terbesar di antara mereka adalah cara informasi diteruskan ke program CGI:
Mendapatkan
CGI menelepon metode get
Browser menambahkan "?" URL yang ditentukan dalam atribut tindakan, dan nilai kode;
http://exemplo.com/cgi-bin/registra.pl?login=guest
Server, saat menerima URL dengan kueri-string, memanggil program CGI yang diidentifikasi di bagian pertama URL (sebelum '?') Dan menjaga bagian setelah '?' Dalam variabel lingkungan query_string (string konsultasi yang terkandung dalam URL setelah '?'). Dengan asumsi pengguna mengetik "tamu" di bidang login, ketika tombol kirim diklik, browser mengirim ke server.
Permintaan GET mengidentifikasi dokumen yang akan dikirim (cgi-bin/record.pl). Selama server dikonfigurasi untuk mengenali semua file di direktori CGI-Bin sebagai program CGI, ia menjalankan program alih-alih mengirim dokumen langsung ke browser, dan menempatkan string login = 'tamu' di variabel lingkungan Query_string.
Programmer CGI tidak dapat mengontrol metode mana yang akan dipanggil program. Dengan demikian skrip biasanya ditulis untuk mendukung kedua metode.
Data yang diperkenalkan dalam formulir adalah bagian dari badan pesan yang dikirim ke server.
Sementara metode GET melewati informasi melalui variabel lingkungan, pos mengirimkan data ke program CGI melalui input standar (input default, stdio.h), sebagai string panjang yang ditentukan dalam variabel lingkungan content_length;
Membuat 2 panggilan ke server, satu untuk menghubungi server dan satu untuk mengirim parameter. Dengan kata lain, jika server menerima bentuk formulir menggunakan pos, dia tahu dia harus terus "menunggu" sisa informasi.
Keuntungan/Kekurangan
Keuntungan dari GET adalah memungkinkan Anda untuk mengakses program CGI dengan kueri tanpa menggunakan formulir, pada dasarnya kami memberikan parameter untuk suatu program. Contoh: Program CGI
Kerugian terbesar dari GET adalah kurangnya keamanan dan fakta bahwa ada beberapa perawatan bahwa browser atau server tidak menipu informasi yang melebihi jumlah karakter yang diizinkan.
Keuntungan terbesar dari metode Post adalah ukuran kueri yang tidak terbatas. Untuk informasi melalui metode POST, program CGI membaca input standar, sehingga tidak mungkin untuk mengakses CGI tanpa menggunakan formulir.
Sejarah dengan memperhitungkan kecepatan inovasi yang terjadi, CGI dapat dianggap lama, mempertimbangkan penciptaan komputer, dapat dikatakan bahwa di usia paruh baya.
Pada tahun 1993, tim Pusat Nasional untuk Superkomputer Aplikasi (NCSA) menulis spesifikasi untuk menghubungi Command Line Executable di daftar email www-voltal. Namun, NCSA tidak meng -host spesifikasi.
Pengembang lain telah mengadopsi spesifikasi, dan telah menjadi standar untuk server web sejak itu. Sebuah kelompok yang diketuai oleh Ken Coar memulai pekerjaan pada bulan November 1997 untuk mendapatkan definisi NCSA yang paling formal. Pekerjaan ini menghasilkan RFC3875, yang menentukan versi CGI 1.1. Disebutkan secara tegas dalam RFC adalah pembayar pajak berikut:
Rob McCool (Penulis NCSA HTTPD Web Server) John Franks (penulis server web GN) ARI Lotonen (CERN HTTPD Web Server Developer) Tony Sanders (Pllexus Web Server Worhor) George Phillips (pemeliharaan server web di University of British Columbia).
Sebagai alternatif yang dapat Anda pertimbangkan:
Fastcgi
PSGI (antarmuka Perl Server Gateway Web)
Rack (Web Server Interface)
WSGI (Antarmuka Gateway Server Web)
Contoh sederhana dari skrip CGI
Letakkan dua angka: