Pada dasarnya, apa yang akan kita buat adalah aplikasi CGI. Bicara teori, aplikasi CGI dapat dibangun dengan bahasa apapun juga, selama bahasa tersebut dapat menampilkan output. Dan boleh dikatakan, hampir semua bahasa pemrograman tentunya dapat menampilkan output. Dan apapun bahasa favorit Anda, Anda dapat membuat aplikasi web dengan mudah. Walau alangkah baiknya apabila bahasa yang Anda gunakan memiliki fungsi pemrosesan string yang cukup baik. Perl atau Python adalah contoh yang baik dalam pemrosesan string. Shell script dengan tool-tool pendukung seperti awk akan sangat membantu.
Secara umum, Anda perlu mencetak header tertentu untuk dikenal sebagai aplikasi CGI. Untuk menampilkan output dalam format hypertext, Anda akan mencetak header berikut ini:
Content-type: text/html Sementara, untuk menampilkan output berupa teks biasa, Anda akan mencetak header berikut ini:
Content-type: text/plain Copy-kan program yang Anda buat di direktori CGI Apache (umumnya direktori cgi-bin di instalasi Apache Anda. Untuk Debian, direktori CGI terletak di /usr/lib/cgi-bin). Jangan lupa untuk memastikan program Anda memiliki permission executable. Secara default, akseslah aplikasi CGI Anda di alamat http:///cgi-bin/ .
Pemrograman Web dengan Shell Script
Shell script tidak hanya dapat digunakan administrasi sistem.
Dengan beberapa baris kode shell script, Anda bahkan dapat menghasilkan aplikasi web yang mengagumkan. Tidak perlu instal macam-macam software, hanya Apache dan shell yang menuruti standar POSIX saja yang diperlukan.
Dengan demikian, Anda dapat melihat bahwa betapa menyenangkannya melakukan pemrograman CGI, walau untuk orang-orang yang hidup di teknologi terkini, boleh jadi CGI akan ditertawakan.CGI dan informasi internal web server Informasi sistem Untuk kesempatan ini, keamanan sistem akan kita abaikan terlebih dahulu.Pernahkah Anda ingin melihat informasi ruang kosong penyimpanan Anda, daftar proses, informasi memori, informasi CPU, informasi partisi harddisk, informasi file sistem yang dimunt, informasi kernel, user-user dan group-group di sistem via web browser? Bagaimana kalau kita membuatnya sendiri? Sebutlah program yang akan kita buat ini dengan nama x2web. Program x2web ini memiliki kemampuan untuk menampilkan hal-hal yang telah disebutkan sebelumnya via web browser. Interface-nya akan ditampilkan cukup ramah dengan bantuan hyperlink. Dan untuk mempermudah peng-copy-an, x2web hanya akan memiliki satu file saja. Untuk setiap tugas yang dikerjakan,
kita akan memproses variabel $QUERY_STRING. Apabila variabel yang satu ini belum diset, maka sebuah menu akan ditampilkan. Sementara apabila $QUERY_STRING memiliki nilai tertentu, maka kita akan melakukan parsing sederhana dan melakukan tugas yang bersesuaian.
Kita akan memiliki sebuah fungsi penting, yang kita beri nama wrapper().
Fungsi ini akan melakukan parsing $QUERY_STRING dan melakukan tugas yang bersesuaian. Fungsi lain seperti fungsi signature() hanya akan menampilkan informasi seputar web server. Berikut ini adalah source code selengkapnya.
Kita akan membahas fungsi wrapper() tersebut. Pertama-tama, kita akan memroses $QUERY_STRING dengan memisahkannya menjadi dua bagian dengan token pemisah adalah tanda sama dengan (=). Untuk itu, kita meminta bantuan kepada program awk. Setelah itu, apa yang kita lakukan hanyalah membaca /proc ataupun file-file lain di sistem.Dengan demikian, kita dapat melihat betapa mudahnya menampilkan informasi sistem Anda ke web browser.
Berikut ini adalah source code selengkapnya.
Download source Code
Shell Script
#!/bin/sh
FSTAT=/tmp/stats
function do_stat()
{
test ! -f $FSTAT && touch $FSTAT
echo
“$(date):::$REMOTE_ADDR:::$HTTP_USER_
AGENT:::” >> $FSTAT
}
function do_show()
{
echo “”
sum=$(cat $FSTAT | wc -l 2>/dev/
null)
echo “$sum records found”
echo “”
test -f $FSTAT && cat $FSTAT | sed
-e “s/:::/
/g”
echo “”
}
function wrapper()
{
case $1 in
stat) do_stat;;
show) do_show;;
esac
}
echo “Content-type: text/html”
echo
if [ ! -z $QUERY_STRING ]
then
wrapper $QUERY_STRING
fi
exit 0
Sabtu, 09 April 2011
Web Shell Scirpt
00.18
No comments
Langganan:
Posting Komentar (Atom)










0 komentar:
Posting Komentar