初めてのCatalyst入門(1)
PerlによるWebフレームワークCatalystとは?
Catalystのインストール手順、サンプルアプリケーションの作成方法
ダウンロード サンプルファイル (49.5 KB)
アプリケーションの実行
Helloアプリケーションのスケルトンができましたので、まずこの時点で一度動作させてみましょう。
Catalystはmod_perlやFastCGIを使用して実行させることもできますが、通常の開発時ではデバッグ情報を逐一確認しながら進められるため、組み込みサーバを使用してアプリケーションを実行する方法も便利です。組み込みサーバはcatalyst.plで生成されたヘルパースクリプトを使用して起動します。
Helloアプリケーションの組み込みサーバを起動するには次のように「Hello/script/hello_server.pl」を使用します。
$ ./Hello/script/hello_server.pl
組み込みサーバを起動すると、次に示すようにコンソールにはさまざまなデバッグ情報や読み込んだプラグイン、コンポーネント、URLなどの情報を表示します。
また、Webブラウザからのリクエストに対して、どのアクションが実行されたか、などの情報も表示されます。
$ ./Hello/script/hello_server.pl [debug] Debug messages enabled [debug] Statistics enabled [debug] Loaded plugins:読み込まれたプラグインの情報 .----------------------------------------------------------------------------. | Catalyst::Plugin::ConfigLoader 0.24 | | Catalyst::Plugin::Static::Simple 0.21 | '----------------------------------------------------------------------------' [debug] Loaded dispatcher "Catalyst::Dispatcher" [debug] Loaded engine "Catalyst::Engine::HTTP" [debug] Found home "/home/test/Hello" [debug] Loaded Config "/home/test/Hello/hello.conf" [debug] Loaded components:読み込まれたコンポーネントの情報 .-----------------------------------------------------------------+----------. | Class | Type | +-----------------------------------------------------------------+----------+ | Hello::Controller::Root | instance | '-----------------------------------------------------------------+----------' [debug] Loaded Private actions:プライベートアクションとクラス/メソッド関係 .----------------------+--------------------------------------+--------------. | Private | Class | Method | +----------------------+--------------------------------------+--------------+ | /default | Hello::Controller::Root | default | | /end | Hello::Controller::Root | end | | /index | Hello::Controller::Root | index | '----------------------+--------------------------------------+--------------' [debug] Loaded Path actions:URLのパスとプライベートアクションの関係 .-------------------------------------+--------------------------------------. | Path | Private | +-------------------------------------+--------------------------------------+ | / | /default | | / | /index | '-------------------------------------+--------------------------------------' [info] Hello powered by Catalyst 5.80007
「<myapp>_server.pl」スクリプトは、実行時に次のようなオプションを指定できます。
| オプション | 説明 |
| -? または -help | ヘルプを表示 |
| -p または -port | 組み込みサーバのPort番号を指定(デフォルト:3000) |
| -k または -keepalive | keep-aliveコネクションを有効にする |
| -r または -restart | ファイルが更新された場合には、自動的に再起動する |
例えば、Port番号8000で組み込みサーバを起動する場合には次のように指定します。
$ ./Hello/script/hello_server.pl -p 8000
組み込みサーバはデフォルトではPort番号3000で動作しているので、Webブラウザで開いてみましょう。
今回の例では、組み込みサーバを起動しているPCのIPアドレスは「192.168.123.69」ですので、URLは「http://192.168.123.69:3000/」になります。IPアドレスやURLは皆さんの動作環境に応じて適宜変更してください。
この記事は参考になりましたか?
- Webアプリケーションフレームワーク「Catalyst」入門連載記事一覧
- この記事の著者
-
山田 祥寛(ヤマダ ヨシヒロ)
静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for Visual Studio and Development Technologies。執筆コミュニティ「WINGSプロジェクト」代表。主な著書に「独習シリーズ(Java・C#・Python・PHP・Ruby・JSP&サーブレットなど)」「速習シリーズ(ASP.NET Core・Vue.js・React・TypeScript・ECMAScript、Laravelなど)」「改訂3版JavaScript本格入門」「これからはじめるLaravel実践入門」「はじめてのAndroidアプリ開発 Kotlin編 」他、著書多数。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
-
WINGSプロジェクト 花田 善仁(ハナダ ヨシヒト)
<WINGSプロジェクトについて>有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。 2026年時点での登録メンバは約50名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂きたい。著書、記事多数。 RSS X: @WingsPro_info(公式)、@WingsPro_info/wings(メンバーリスト) Facebook
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア

