2010-01-01から1年間の記事一覧

さくらのレンタルサーバーで「505 Internal Server」エラーが発生する場合の対処方法

.bread { padding:0; margin:0; } .bread li { display:inline-block; list-style-type:none; font-size:14px; } .bread a { padding:3px 5px; width:100%; background:#3cb371; color:white; border-radius:3px; text-decoration:none; } .bread a:hover { …

MojoliciousでCSSなどの静的ファイルを利用する

Perl › Mojolicious 今回は静的ファイルを利用したWebアプリケーションを作成してみましょう。静的ファイルはスクリプトのあるディレクトリのpublicというディレクトリに配置します。cssというディテクトリを作成して、その中にcommon.cssというファイルを配…

getpwuid関数 - ユーザー情報(ユーザー名)を取得する

Perl › 関数 › here ユーザー名を取得するにはgetpwuid関数と特殊変数$>を使って以下のようにします。 my $user = getpwuid($>); getpwuidの引数にユーザーIDを指定するとユーザー名を取得できます。 Perl › 関数 › here

Windows上でMojoliciousの開発を始めて、さくらのレンタルサーバーで公開するまでの手順

Perl › Mojolicious Windows上でMojoliciousというWebフレームワークを使ってWebアプリケーションの開発を行い、さくらのレンタルサーバーのライトプランで公開するまでの手順を書きたいと思います。ライトプランは1ヶ月あたり125円なので気軽にWebフレーム…

CentOS上でPerlのDBIを使ってSQL Serverに接続する手順

.bread { padding:0; margin:0; } .bread li { display:inline-block; list-style-type:none; font-size:14px; } .bread a { padding:3px 5px; width:100%; background:#3cb371; color:white; border-radius:3px; text-decoration:none; } .bread a:hover { …

Webアプリケーション開発入門

このページの内容はMojolicious入門に移動しました。

FAQ - Perlでよくある質問に答える

Perl › FAQ Perlでよく訪ねられる(であろう)質問について書いてみたいとおもいます。 引数のないshift関数はどういう意味ですか Perlのソースコードでは、引数のないshift関数をよく見かけると思います。引数のないshift関数の意味は次のようになります。 サ…

サブルーチンの作成方法

Perl › here サブルーチンの作成方法を学びましょう。サブルーチンとは、あるまとまった機能に名前をつけて呼び出せるようにする機能のことです。他の言語で関数と呼ばれる機能と同じです。Perlの標準関数についてはPerlの標準関数で解説しています。 サブル…

Mojoliciousで自由に「URL」を生成するテクニック

.bread { padding:0; margin:0; } .bread li { display:inline-block; list-style-type:none; font-size:14px; } .bread a { padding:3px 5px; width:100%; background:#3cb371; color:white; border-radius:3px; text-decoration:none; } .bread a:hover { …

WebサーバーStarmanをバックグラウンドで起動・停止する手順を追加しました

PerlのWebサーバーStarmanをバックグラウンドで起動・停止する手順を追加しました。PSGIアプリケーションを本番で運用するときの一番シンプルな手順になります。 Mojolicious(PSGI)アプリをStarmanでデプロイする ポートを指定して立ち上げた後は、Apache/mo…

Mojolicious::LiteからMojoliciousに移行する場合に考えておきたいこと

.bread { padding:0; margin:0; } .bread li { display:inline-block; list-style-type:none; font-size:14px; } .bread a { padding:3px 5px; width:100%; background:#3cb371; color:white; border-radius:3px; text-decoration:none; } .bread a:hover { …

Mojoliciousですべての処理の前に実行する処理をアンダーで記述する

.bread { padding:0; margin:0; } .bread li { display:inline-block; list-style-type:none; font-size:14px; } .bread a { padding:3px 5px; width:100%; background:#3cb371; color:white; border-radius:3px; text-decoration:none; } .bread a:hover { …

cpanmによるPerlのローカル環境構築

Perl › モジュール › here cpanmを使ってローカル環境を構築する手順です。迷わない一直線の手順です。 cpanmのインストール 以下のコマンドを個人ユーザで実行してください。 # cpanmのインストール curl -L -O http://xrl.us/cpanm perl cpanm App::cpanmi…

Mojoliciousの「自動試験」のテクニック

Perl › Mojolicious Mojoliciousの「自動試験」を行うためのテクニックをまとめました。 Mojolicious::Liteでスクリプトをデバッグする方法 Mojolicious::Liteではスクリプトを簡単にデバッグすることができます。とても短い記述で試験をかけるというのがう…

Mojolicious::Liteでルートの一覧を確認する

.bread { padding:0; margin:0; } .bread li { display:inline-block; list-style-type:none; font-size:14px; } .bread a { padding:3px 5px; width:100%; background:#3cb371; color:white; border-radius:3px; text-decoration:none; } .bread a:hover { …

日本のCPANミラーサイト

.bread { padding:0; margin:0; } .bread li { display:inline-block; list-style-type:none; font-size:14px; } .bread a { padding:3px 5px; width:100%; background:#3cb371; color:white; border-radius:3px; text-decoration:none; } .bread a:hover { …

リファレンスの使い方をマスターしよう

Perl › here リファレンスとはデータを指し示すものを表現します。C言語のポインタのようなものだと考えると理解しやすいです。 配列のリファレンス 配列のリファレンスについて解説していきます。 配列 配列の作成です。 my @nums = (1, 2, 3); 配列のリフ…

Mojoliciousの便利なAPI

.bread { padding:0; margin:0; } .bread li { display:inline-block; list-style-type:none; font-size:14px; } .bread a { padding:3px 5px; width:100%; background:#3cb371; color:white; border-radius:3px; text-decoration:none; } .bread a:hover { …

Mojolicious(PSGI)アプリをStarmanでデプロイする

.bread { padding:0; margin:0; } .bread li { display:inline-block; list-style-type:none; font-size:14px; } .bread a { padding:3px 5px; width:100%; background:#3cb371; color:white; border-radius:3px; text-decoration:none; } .bread a:hover { …

Perlの正規表現をマスターしよう

Perl › 正規表現 Perlの正規表現の解説です。この記事を読めば、日常で利用する正規表現のすべてを短時間でマスターすることができます。正規表現を使えば、文字列の集合を表現することができ、正規表現にマッチする文字列を検索したり、置換したりすること…

ファイルテスト演算子

Perl › 演算子 › here ファイルテスト演算子を使ってファイルのさまざまな情報を調べることができます。 ファイルテスト演算子 機能 -e ファイルが存在するかどうかの確認 -f 通常ファイルが存在するかどうかの確認 -d ディレクトリが存在するかどうかの確認…

perlapi - XSにおけるデータ操作関数

Perl › XS › here perlapiとはXSでPerlのデータを操作するための公式APIで、C言語で書かれたマクロや関数のことです。 出力、スカラ、標準入出力 PerlとXS(C言語)のAPIの対応がわかるとXSがわかりやすそうだ。 標準出力への出力 #Perl print "Hello"; # XS P…

演算子の優先順位

Perl › 演算子 › here Perlの演算子の結合の優先順位は高い順に次のようになっています。 リスト演算子(左方向) -> ++ -- ** ! ~ \ 単項の+ 単項の- =~ !~ * / % x + - . > 名前付き単項演算子 = lt gt le ge == != eq ne cmp & | ^| && || .. ... ?: = += -…

Perlの論理演算子

Perl › 演算子 › here Perlの論理演算子には次のものがあります。 演算子 意味 || 論理和 && 論理積 ! 否定 or 論理和(&&より優先順位が低い) and 論理積&&より優先順位が低い) not 否定(!より優先優位が低い) && 論理積(A かつ B) 「AかつB」という論理積を…

XS入門 - C/C++言語のバインディング

Perl › here XSを使ったC/C++のバインディングについて解説します。まず最初に、XSモジュールを作成する方法について解説します。 1. XSモジュールの作成 では実際にXSモジュールを作成してみましょう。XSモジュール作成コマンド、Makefile.PL、makeについて…

公式ドキュメント一覧(日本語訳つき)

.bread { padding:0; margin:0; } .bread li { display:inline-block; list-style-type:none; font-size:14px; } .bread a { padding:3px 5px; width:100%; background:#3cb371; color:white; border-radius:3px; text-decoration:none; } .bread a:hover { …

豆知識 - 知っておくと役に立つ

Perl › 豆知識 知っておくと何かとPerlが使いやすくなったり、読みやすくなるかもしれないことをいろいろと追加していきます。 BEGIN BEGINはコンパイルのときに実行するということをあらわします。 BEGIN { # コンパイルのときに実行したい文 } require req…

なぜPerlで例外処理のfinallyが特に必要と感じないかを考えてみた

Perl › 読み物 Perlでは例外を発生させるにはdieを使います。これはJava言語でいうthrowにあたります。例外をキャッチするにはevalを使用します。これはJava言語でいうcatchにあたります。例外が発生したかどうかは$@にメッセージが設定されたかで判定できま…

utf8 - ソースコードのUTF-8で書かれた文字列を内部文字列に変換

Perl › モジュール › here utf8モジュールを使用すると、ソースコード中のUTF-8で記述された文字列を内部文字列に変換することができます。 # ソースコード中にUTF-8で書かれた文字列を内部文字列に変換 use utf8; my $message = 'あいうえお'; ソースコード…

Cwd - カレントディレクトリのパスを取得する

Perl › モジュール › here Cwdモジュールを使用すると、カレントディレクトリのパスを取得できます。 # モジュールの読み込みと関数のインポート use Cwd 'getcwd'; カレントディレクトリのパスを取得するにはgetcwd関数を使用します。 # カレントディレクト…