kirim data sesegera mungkin ke browser:
- matikan line buffering perl -> $| = 1
- set CGI ini non-parsed-header (di Apache: beri nama depan
skrip 'nph-'. mis: nph-trace.cgi)
contoh:
===
#!/usr/bin/perl
$|++;
$host='www.yahoo.com';
print "Content-type: text/html\n\n<html><body><pre>\n\n";
open T, "/usr/sbin/traceroute $host |";
print while <T>;
print "</pre></body></html>";
exit;
===
btw, kok harus telnet dulu? apa skrip CGI-nya jalan di
Windows? perasaan saya, Windows punya buffering
sendiri, jadi skrip2 nph- ngga jalan...
dik Nur wrote:
> saya coba buat suatu web berisi traceroute seperti di
> http://net.yahoo.com/cgi-bin/trace.sh?nama.host , saya buat seperti ini:
> ---
> #!/usr/bin/perl
> print "Content-type: text/html\n\n<html><body>";
> use Net::Telnet ();
> $t = new Net::Telnet (Timeout => 100, Prompt => "$prompt");
> $t->open("$ip");
> $t->login("$user","$passwd");
> @lines = $t->cmd("traceroute $namahost");
> print "<pre> @lines </pre>";
> print "</body></html>";
> exit;
> ---
> kalau di yahoo, halaman ditampilkan sambil menyelesaikan traceroute, jadi jalan
> secara bersamaan. Tapi kalau contoh di atas, traceroute diselesaikan dulu,
> setelah itu baru ditampilkan.
> Kalau saya ingin mencontoh yahoo, file di atas harus diapakan ?
>
--
Steven Haryanto <[EMAIL PROTECTED]>
--------------------------------------------------------------------------------
Utk berhenti langganan, kirim email ke [EMAIL PROTECTED]
Informasi arsip di http://www.linux.or.id/milis.php3
Pengelola dapat dihubungi lewat [EMAIL PROTECTED]