タグ

perlに関するbayanのブックマーク (14)

  • 簡単CGI: Location ヘッダー

    ■ Location ヘッダー Locationヘッダーはリダイレクト(別のURLに移ること)するためのヘッダーです。 HTMLでも下のようなMETAタグを使えば同じようなことができます。 <META HTTP-EQUIV="Refresh" CONTENT="5; URL=http://~"> これは"http://~"というアドレスに5秒後移りますよ、ということを意味しています。 では、LocationヘッダーとMETAタグはどこが違うのでしょうか。 ○Locationヘッダーの主な特徴 ・即座に移動する ・ブラウザの履歴に残らず、 ブラウザのバックボタンを使って戻っても、移動前のページには戻らない ○METAタグの主な特徴 ・移動するまでの秒数が指定できる(0秒も可) ・ブラウザの履歴に残り、 ブラウザのバックボタンを使って戻ると、移動前のページに戻ってしまう という点が挙げられます

    bayan
    bayan 2008/06/05
  • 第3回 Apacheのアクセス・ログを解析する

    今回は,Apacheのアクセス・ログを取り上げます。Perlのスクリプトを用いて,Apacheのアクセス・ログを解析・集計し,さらにあなたが欲するレポートを作成していきます。 Webサーバーを設置したら,どれくらいのアクセスがあるのか,どのページに人気があるのか気になることでしょう。そうした情報はアクセス・ログを解析することによって取得できます。 ここで紹介する手法や用いたモジュールはアクセス・ログだけに限らず,ファイルの解析や文書の加工などに応用できます。 なお,単にアクセス・ログを解析したいということであれば,AnalogAWStatsなど既に多くの解析用のフリーソフトが作成され,利用されています。あなたが欲するログが取得できるのであれば,それらソフトウエアを使うべきでしょう。あえて車輪を再発明する必要はありませんから。 アクセス・ログのフォーマット Apacheのアクセス・ログはご

    第3回 Apacheのアクセス・ログを解析する
  • ISC information the fifth edition

  • ロックファイルを考える

    CGIでファイルを操作すると、しばしばデータが消失することが有ります。 これは、同時アクセス(書き込み)による衝突です。 他の多くのサイトでもこれを避ける方法が紹介されていますが、私の経験上どれも不十分で、 現に有名サイトのカウンタさえ破壊されていることがしばしばです。 このコーナーでは、衝突しない。万が一衝突してもデータを破壊しないロック機能を考えてみましょう。 現在もっとも採用されているロック機能 foreach (1 .. 10) { if (symlink($datafile,$tmpfile)) { last; } sleep(1); } open(OUT,"$datafile) || die "Can't open tmp file.\n"; print @DATA; close(OUT); unlink($tmpfile); このコードを1つずつ解析してみましょう。 fore

  • Jcode.pm

    Jcode.pm - jcode.pl の後継、Encode.pm への架け橋 [英語][日語] Last Modified:Sunday, 11-May-2008 03:16:47 JST by Dan Kogai Perl 5.8.0 より、Jcodeの全機能は Encode module を通じてPerlに標準装備となります。Jcodeのメンテナンスは旧Perlのために 今後も続けていく所存ですが、最新のPerlをお使いの方には、より高機能、高 性能、そしてなんといっても標準装備の Encode の方をお薦めします。 Jcode 2.0 より、お使いの Perl Version が 5.8.1 以降の場合は Encode の Wrapper として機能するようになりました。 この場合、Jcode.pm は付属モジュールを必要としないため、 jcode.pl の 場合と同様、Jcod

  • Perlモジュールパッケージ管理システム導入(cpan2rpm) - Fedoraで自宅サーバー構築

    [root@fedora ~]# yum -y install perl-ExtUtils-MakeMaker ← cpan2rpmに必要なExtUtils::MakeMakerインストール [root@fedora ~]# yum -y install cpan2rpm ← cpan2rpmインストール [root@fedora ~]# wget http://jaist.dl.sourceforge.net/sourceforge/cpan2rpm/cpan2rpm-2.028-1.noarch.rpm ← cpan2rpmダウンロード ※最新版のURLはダウンロードページで確認すること ※==> PASV ...でwgetが固まる場合は以下のコマンドでダウンロードする [root@fedora ~]# wget --no-passive-ftp ftp://arix.com/cpan

  • はじめての自宅サーバ構築 - Fedora/CentOS - PerlのCPANモジュールを自動でRPMに変換(cpan2rpm)

    動作確認 [ FC1 / FC2 / FC3 / FC4 / FC5 / FC6 / Fedora7 / Fedora8 / CentOS4 / CentOS5 ] 当該ページは凍結しました ■ cpan2rpmとは・・・ サーバ環境にPerlのモジュールを追加導入することはよくあり、そのインストールにRPMを使ったり、コンパイルを行なったりCPANで行なったり、操作が一元化されないため管理が煩雑になってしまいます。 cpan2rpmとはCPAN経由でPerlモジュールを取得し、RPMにパッケージしてくれるというものです。 ■ cpan2rpmのインストール ■ FedoraCore1 / FedoraCore2 / FedoraCore3 / FedoraCore4 / CentOS4 の場合 cpan2rpmの取得 # wget http://jaist.dl.sourceforge.

  • CentOS で構築する自宅サーバ : cpan2rpm の導入

  • PHP・Perl各種テンプレートエンジンの処理速度比較

    はじめに 最近のWEBアプリケーションではテンプレートエンジンと呼ばれる仕組みを用いてHTML表示を行うのが主流になっている。 テンプレートエンジンとは、 print "<html>"; print "<h1></h1>"; print "</html"; のように、print()で直にHTMLを出力するんじゃなくって、 <html> <h1>[% mesg %]</h1> </html> のようなテンプレートファイルを用意し、それをスクリプトで読み取り、整形加工し、HTMLとして出力する仕組みのこと。 テンプレートエンジンを用いることで、HTMLの見た目の修正に必要なのはテンプレートファイルだけになり、メンテナンス性が向上する。 PHPPerlの代表的なテンプレートエンジンはどの程度の処理速度を持つのか、検証してみた。 対象のテンプレートエンジン Perl HTML::Templa

    bayan
    bayan 2007/07/24
    「だったら、テンプレートエンジンってあんまり意味ないね。特にPHPでは。 」
  • [ThinkIT] 第4回:テンプレート管理 (1/4)

    現在のWebアプリケーション開発において、ページのデザインは重要な要素のひとつとなっていますが、洗練されたデザインというものはどうしてもHTMLコードが複雑化してしまうものです。今回はWebアプリケーション開発をする上で、この複雑化するデザインとビジネスロジックの両立を行なうためのテンプレート管理について、その考え方やSledgeでの実装方法について解説をしていきます。 テンプレート管理とは、簡単に言えば従来一緒にして開発を行なっていたHTMLコードなどの「デザイン部分」とビジネスロジックなどの「プログラム部分」を切り離し、別なパーツとして管理することを言います(図1)。なぜこのような機能が必要になってくるのでしょうか。まずはそれについて解説していきます。 Webアプリケーション開発におけるHTMLコンテンツの生成にはいくつかの方法があります。一般的には、動的に生成するパーツ(HTMLコー

  • Perl/@INC - Perlのライブラリの検索PATHの追加

    Perlのライブラリの検索PATHを格納した配列のこと。 例えば、コマンドラインから、次を実行すると、 % perl -le 'print for @INC' /usr/local/lib/perl5/5.8.8/BSDPAN /usr/local/lib/perl5/site_perl/5.8.8/mach /usr/local/lib/perl5/site_perl/5.8.8 /usr/local/lib/perl5/site_perl /usr/local/lib/perl5/5.8.8/mach /usr/local/lib/perl5/5.8.8 . の様に表示される*1ので、Perlはこの順序に従ってライブラリを検索する*2。 配列なので、プログラム中、 unshift @INC, '/home/user/lib/'; の様に追加も可能。 また、-Iオプションを用いることによ

    bayan
    bayan 2007/07/09
  • Perlメモ

    複数のプロセスでロック状態が異常であると判断し,そのうちの 1つがロックを解除したことにより,別のプロセスがロックしたにもか かわらず,先ほどロック状態が異常であると判断したプロセスによってこの正常なロッ クを解除されてしまう可能性があります. この方法の問題点は,異常なロック状態を解除する操作が正常なロック状態をも 解除できてしまうことにあります.逆に言えば,異常なロック状態を解除する操作に よって正常なロック状態を解除できなければ問題ないわけです.そのためにはどうす ればよいのか? 答えはロック状態が常に変化していけば よいということです.そして,これを実現するのに都合がよいのが rename による方法になります. 最初のスクリプトで説明しますと,ロックファイルが lockfile という 名前のときがロックが解除されている状態で,lockfile987654321 のよう に後ろに

    bayan
    bayan 2007/03/16
  • 「なぜ『業務にPerlは使えない』のか?」だけどなんかある? - Walrus, Visit.

    なぜ『業務にPerlは使えない』のか?についての補足。 はてなブックマーク(1)、(2)、(3)、(4)のコメントについて思うところや、そのほか雑感を残しておきます。 質問、関連話などありましたらコメント欄にどうぞ。 お名前: コメント: 更新 2006-02-02 (Thu) 12:05:58 Perl は自由に書けすぎるってのが大きいと思いますよ。自由度の高さが、そのままメンテナンス性の悪さに直結してます。同じ指摘は C/C++ にも言えることですが、Perl は自由度の高さを利点とする傾向があり、C/C++ は自由度の高さを欠点とする傾向がありますね。ネタ的ですが [[http://www.python.jp/Zope/articles/misc/morality_tale こんなの ]] もかなり的を得ているかと。5年後に開発当時の担当者が一人もいない状態で、別の人が担当するなんて

    bayan
    bayan 2007/01/02
  • http://dag.wiee.rs/rpm/

  • 1