こんにちわ、まめこです。
yusukebe先生に「cgiでflickr検索」という宿題を貰ってcgiに挑戦しています!
自分はレンタルサーバーなので、いろいろと設定に苦労しました。
まだflickr検索は出来ていないのですが、helloworldだけ表示することに成功!
ソースはこんな感じです。
#!/usr/local/bin/perl print "Content-type: text/html\n\n"; print "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML//EN\"><HTML><HEAD><TITL E>hello world!</TITLE></HEAD><BODY>\n"; print "hello world!\n"; print "</BODY></HTML>\n"; exit;
print文でヘッダ情報を表示します。この行です。
print "Content-type: text/html\n\n";
調べてみると
この行では、CGI から出力されるものをブラウザにHTMLページですよ と指示しています。http://www.aimix.jp/cgi/syohohtmlv.html
ということらしいです。
後はhtmlを頭からprintしていくだけでした。結構簡単。
毎回print文でこんな長文打つのはめんどくさいよー。という場合はCGI.pmを使うと楽できるようです。
#!/usr/local/bin/perl use strict; use CGI; my $q = new CGI; print $q->header; print $q->start_html(-title=>'hello world'); print "Hellow World!"; print $q->end_html."\n"; exit;
これだけ! 作ってくれた人に感謝ですね。モジュールってスゴい!
あとは、ファイル名をcgiにしてレンタルサーバーに転送しました。
以下のことに気をつけるとすんなり出来るかもですよ!
1.perlのパスは合っているか
2.ヘッダ情報はちゃんと書いているか content-type=text/html
3.権限は合っているか
自分はなかなか動かなかったです><レンタルサーバーによってcgiの設定が微妙に違うので注意が必要かもです。
引き続き、yusukebe先生の宿題をやっつけなくちゃー!



Leave a comment