タグ

catalystに関するpepponのブックマーク (75)

  • 意図せぬレスポンスボディを含むリダイレクト応答 | 水無月ばけらのえび日記

    更新: 2024年3月4日21時6分頃 「ダチョウ式リダイレクトと名付けてみる修行 (d.hatena.ne.jp)」。 ここで言っている「ダチョウ式リダイレクト」とは、リダイレクト応答のレスポンスボディに意図せぬものが出力されている状態を指します。「頭隠して尻隠さず」という言葉がありますが、英語では "To bury one's head ostrich-like in the sand." と言うそうで、ostrich はダチョウですね。 ステータスコードが 301 や 302 などになっていて、Location: フィールドが出力されていれば、レスポンスボディが何であれリダイレクトは行われます。この場合、多くのブラウザではレスポンスボディは見えませんが、パケットを見ればレスポンスボディは丸見えという状態です。普通にブラウザで見ていても分からないので、テストでも発見しにくい厄介な不具合

  • 面白ラボBM11(ブッコミイレブン) 2009: Ark

    Ark CGIでも実用的に使うことが出来るCatalystライクなウェブアプリケーションフレームワーク 2009.06.01 ArkはCatalystの流れをくむPerl製のウェブアプリケーションフレームワークです。 カヤックのBM11ブッコミイレブンのような大量に小さなアプリケーションを開発するような現場においてはCatalystのような大規模なフレームワークは逆に足枷になってしまう場合があります。 「もっと軽いけどCatalystっぽくつかえるフレームワークが欲しい・・・!」 というラボ内の要望に応えて新しいフレームワークを開発しました。 といっても一から開発したのではなく、最近のPerlにはHTTP::Engineという「フレームワークをつくるためのフレームワーク」とも言える素晴らしいライブラリがあり、そのライブラリの上で開発を行っています。 HTTP::Engineを使用するとCG

  • 第6回 Catalyst::Upgrading:検証はお早めに | gihyo.jp

    3年前の大混乱 モダンPerl界を代表するウェブアプリケーションフレームワークといわれるCatalystが2006年半ばに5.6系統から5.7系統に移行したとき、創始者のゼバスティアン・リーデル氏を追い出す形で集団管理体制に移行した開発チームが最初にしたことは、プロジェクト開始当初から使われてきたCatalystという名のディストリビューションはそのままに、Catalyst-Runtimeという新しいディストリビューションをつくることでした。 このようなディストリビューション名の変更は、CPANクライアントを使っている分には(内部でモジュール名からディストリビューション名への変換が行われるので)問題にならないのですが、外部のパッケージ管理者たちには少なからぬ負担をかけました。なにしろ突然100を越す関連パッケージの依存が変更になるのです。基的にはメタ情報だけ書き換えれば済む話とはいえ、従

    第6回 Catalyst::Upgrading:検証はお早めに | gihyo.jp
  • 2009-04-21 - Japan Perl Association Wiki

    JPA セミナー #1 「Catalyst フレームワークを120% 使う/Perl開発最新ベストプラクティス(予定)」 内容 未定 (Catalyst, Moose, ウェブアプリケーション ベストプラクティスの予定) 講師 Jay Shirley氏 海外で近代的なPerlでのシステム構築技術の普及に努める Enlightened Perl Organisation (EPO) のコアメンバーであるJay Shirley氏はDBIx::ClassやCatalyst 等のフレームワークを使ったスケーラブルかつ堅牢なシステムの構築を日々行っている、世界でも屈指のPerlエンジニアです。 EPO EPOはレガシーなPerlではなく、現在現場で実際にアプリケーション開発に使われているPerl、そして最先端のベストプラクティス等の教育を通してPerl 技術を理解してもらうための団体です。 会場

  • GitHub - hirafoo/niget: catalyst sample source

    =head1 NAME Niget - ニコニコ動画のflvをゲットしよう =head1 What's this ニコニコ動画の任意の動画のURLを入力すると、ニコニコ動画のAPIより、動画体(flv、swf)の URLを取得し、それをひたすら記録し続けます。 ニコニコ動画のAPIを叩く部分は、小飼 弾さん作のスクリプトを参考にさせて頂きました。 http://blog.livedoor.jp/dankogai/archives/50900305.html =head1 テストの実行の仕方 prove -It/lib -vl =head1 style 「モダンPerl入門」とPixisを参考にして、Catalystからモデル分離をしたつもりです =head1 DB localhostMySQLにrootでパスワード無しで繋ぐ設定になってます 以下のファイルにコネクション情報を書いてます

    GitHub - hirafoo/niget: catalyst sample source
  • catalystのサンプルアプリとソースを公開してみる - 新だるろぐ跡地

    モダンPerl入門を読んで色々勉強したので、サンプルアプリを作って自宅サーバで公開してみる。 http://niget.net/ ソースはgithubで晒し中。 http://github.com/hirafoo/niget/tree/master 誰かの参考になったり、disられたり、あれこれ議論したり、何かが起こったりするのを期待中。 とりあえず、このアプリの使い方とか。 ニコニコ動画の任意の動画のURLを入力 適当バリデートを通ったらDBに保存 5分に1回cronが走る。内容は、ニコニコ動画のAPIを叩いて、動画体のURLと動画の名前を取得 APIは2個ある。体のURLを取得する部分は小飼 弾さんのスクリプトを使わせてもらった 取得した内容をDBに保存。取得済みの動画は削除。 あとは動画体を落とせばいいじゃない 以上。 まーサンプルアプリだしね! でも、体URLを取得できるw

    catalystのサンプルアプリとソースを公開してみる - 新だるろぐ跡地
  • UML::Class::Simple で Catalyst のクラス継承図を描いてみた

    UML::Class::Simple ってモジュールがあります。このモジュールを使うと既存のプログラムを解析してクラス図を作成することができます。業務で仕様書を書く必要がでた場合、もしくは Catalyst のようなフレームワークをより深く知りたくなったときなどに大いに役立つモジュールです。 http://search.cpan.org/~agent/UML-Class-Simple/lib/UML/Class/Simple.pm UML::Class::Simple is a Perl CPAN module that generates UML class diagrams (PNG format, GIF format, XMI format, or dot source) automatically from Perl 5 source or Perl 5 runtime. Per

  • Craftworks Tech Blog » Catalyst でオートログインとブラウザを閉じるまで有効な Cookie を共存させる

    Catalyst::Plugin::Session では、デフォルトではセッションの有効期限は $c->config->{’session’}{’expires’} の値に固定です。 ですので、「次回からログインを省略する」のようなオートログイン機能を実装するには、セッションの expires を動的に変更する必要があります。 これは、C::P::Session::DynamicExpiryを使ってremember meに紹介されている、Catalyst::Plugin::Session::DynamicExpiry を使えば可能で、セッションと Cookie と両方の有効期限を変更してくれるので、 オートログイン無効の場合、ログイン状態は一定時間、ブラウザを閉じてもログイン維持 オートログイン有効の場合、ログイン状態は半永久的、ブラウザを閉じてもログイン維持 という仕様が実現できます。し

  • Planet Catalyst - Japanese Edition

    優秀なハカーの皆さんならすでにご検討されたようなことなんでしょうけど、思いついたので一応書いておきますね。 DBIC って、redhat 系由来の遅くなるパッチの当たってる環境では、DBIC_NO_WARN_BAD_PERL=1 をつけないと STDERR にうざいメッセージを吐く機構が DBIx::Class::StartupCheck にあります。 それみたく、Catalyst では使っていいプラグインのホワイトリストを持っておいて、うざいメッセージを吐くだけじゃなくて CATALYST_ENABLE_BACKWARD_COMPATIBLE_PLUGIN=1 (英語適当) みたいなのをつけないと起動しない仕組みとか入れればいいんじゃないのかなと思いました。

  • 地道な作業中 - file-glob こと k.daibaの日記

    モジュールのバージョン Catalystをベースにしたアプリケーションのインストール方法を書いていて,資料内で説明したモジュールのバージョンを書いてみようと思いました.ircでcharsbarとlestrratに相談しながらできたのがこれ.CatalystとCatalystが呼び出しているモジュール一覧とそのバージョンを取得するには, $ perl -MCatalyst pmver.pl のように使います.中身はこんな感じ #!/bin/perl use strict; use warnings; my ( %i, @m, %m, $d, $p ); %i = %INC; require LWP::Simple; require Parse::CPAN::Packages; $d = LWP::Simple::get("http://www.cpan.org/modules/02packa

    地道な作業中 - file-glob こと k.daibaの日記
  • $c->uri_for の汚染 - 酒日記 はてな支店

    Bugtraq: WordPress XSS vulnerability in RSS Feed Generator を見て。 Catalyst でも $c->uri_for() で生成される文字列は、安全な文字列であると (なんとなく) 思い込んでいたらそうではないのだな。 <a href="[% c.uri_for('/') %]">みたいにエスケープしないで書くと、host 部分は $ENV{HTTP_HOST} (リクエストヘッダの Host:) から生成されることが多いので XSS が起きる。 これだと汚染された Host: を送ったクライアントにしか効かないような気がするんだけど、出力を Cache していると他のクライアントにも影響を及ぼせると。 まあ、出力はちゃんとエスケープしろ、という話だから目新しくはない。 $ GET -H 'Host:"><body onload=a

    $c->uri_for の汚染 - 酒日記 はてな支店
  • 続:Catalystでマルチバイトを取り扱うときのまとめ - hide-k.net#blog

    以前、Catalystでマルチバイトを取り扱うときのまとめという記事を書いたのですが、情報が少し古いので、最近僕がやっている方法を紹介します。 この記事では Catalyst 5.7015 Catalyst::View::TT 0.27 Catalyst::Plugin::ConfigLoader 0.22 Catalyst::Plugin::FillInForm 0.10 Catalyst::Plugin::Static::Simple 0.20 Catalyst::Plugin::Unicode 0.8 の環境で紹介しています。 また、基的にDBICに関しては以前の記事の通りDBIx::Class::UTF8Columnsを使うという感じです。 まず、こんな感じのアプリケーションを用意します。 MyApp package MyApp; use strict; use warnings

  • / - Catalyst::Wiki

    Getting Started Catalyst overview Necessary background knowledge Installing Catalyst or getting a binary build Deploying Catalyst Applications Catalyst tutorial Catalyst Flow Chart and Catalyst redispatch diagrams Catalyst forward/detach/visit/go FAQ - general questions about Catalyst that can be answered in a few lines Recommended Plugins - Recommended plugins to solve common tasks for production

  • Catalystのデプロイに関するあれこれ - 日向夏特殊応援部隊

    雑多なメモです。 とりあえずCatalystにおけるデプロイってどーよって辺りからごニョゴニョしてた内容です。 Module::Install + Module::Install::Catalyst catalyst.plでgenerateされたMakefile.PLは、 use inc::Module::Install; name 'MyApp'; all_from 'lib/MyApp.pm'; requires 'Catalyst' => '5.7007'; requires 'Catalyst::Plugin::ConfigLoader'; requires 'Catalyst::Plugin::Static::Simple'; requires 'Catalyst::Action::RenderView'; requires 'YAML'; # This should refle

    Catalystのデプロイに関するあれこれ - 日向夏特殊応援部隊
  • Catalyst::Manual::Cookbook::Deployment - libnitsuji.so

    Cookbook長いので分割。 デプロイについてのレシピ。Webサーバーエンジンとアプリケーションの効率化も含む。 http://search.cpan.org/~jrockway/Catalyst-Manual-5.700701/lib/Catalyst/Manual/Cookbook.pod#Deployment mod_perl Deployment mod_perlは多くのアプリケーションに対しての最適解だけど利点と欠点を述べる。他の方法としてはFastCGIがある。 Pros Speed mod_perlはとても高速で、それぞれのApacheプロセスのメモリにアプリケーションをロードすることによって恩恵を受けられる。 Shared memory for multiple apps 同じサーバーで複数のCatalystアプリケーションをする必要がある場合、mo_perlは共通のモジ

    Catalyst::Manual::Cookbook::Deployment - libnitsuji.so
  • Building PAR Packages (Catalyst)

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • Catalyst で簡単 Flash Remoting サーバーサイド開発 - KAYAC engineers' blog

    perl のイベントで空気を読まず Flash についての発表をしたり、Ajax のテーマの原稿で空気を読まず Flash について書いたりしている村瀬です。こんにちは。 先日 adobe が AMF (Action Message Format) の仕様を公開してくれたので、それではと perl で AMF パーサーを書いてみました。 Data::AMF この中の Data::AMF が AMF のデータ部分のみをパースするモジュール。Data::AMF::Packet が Flash Remoting などでつかわれる AMF パケットをパースするモジュールとなっています。 ということで、Data::AMF::Packet を使用すれば Flash Remoting のサーバーサイドを開発することはできるのですが、AMF パケットを素で扱うと若干面倒な実装をする必要があります。そこで、

    Catalyst で簡単 Flash Remoting サーバーサイド開発 - KAYAC engineers' blog
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知