2012年04月21日

スタードメインでドメイン割引中

 ネットオウルの運営するスタードメインで、4月30日まで.net新規取得が480円(通常850円)、.com新規取得580円(通常920円)など、新規取得・移管の割引キャンペーンを展開中です。
 SSL証明書(SSLボックス)でお世話になっている会社ですが、ValueDomainからいくつか移管させてもよいと思っています。
 惜しむらくは、移管可能なドメインが.com,.net,.org,.biz,.info,.jp,.co.jp,.or.jp,.mobi,.inの10種に限られていることでしょうか。昔取得した.acなどは未だ本家で管理・更新していますし・・・

posted by 鯖缶 at 19:33 | Comment(0) | TrackBack(0) | 商品紹介 | このブログの読者になる | 更新情報をチェックする

2012年01月13日

ファイル名・パスの取り扱い

 今書いているスクリプトのファイルロック機構を作る上で、ファイル名・パスを一意で取得する必要があったためサブルーチンを作り始めたら、ちょっと横道に逸れたけど役に立ったのでメモ。
 個人的にスクリプト内部ではファイルをopenしたりする際には絶対パスを指定するのがよいと思います。ここでいう絶対パスというのは、"/"で始まり、"./"や"../"を含まないパスのこと。正規化というらしい。

 で、ユーザが入力した値(ユーザIDとかファイルナンバーとか)に基づいてファイルを扱う際に気をつけなければいけないのが、ディレクトリ・トラバーサル(cf.Wikipedia)です。ユーザから入力された値をチェックするのはまあ当然ですが、ファイルを取り扱う直前にもチェックを入れておきたいものです。

【続きあり】
posted by 鯖缶 at 01:30 | Comment(0) | TrackBack(0) | ただいま開発中 | このブログの読者になる | 更新情報をチェックする

2012年01月11日

PATH_INFOと%2Fの関係

 CGIを呼び出す際、昔はパラメータをhttp://example.com/hoge.cgi?user=tom&key=valueと、?と&で繋げるのが常識だったわけですが、SEO的にサーチエンジンにも好まれないということでhttp://example.com/hoge/tom/valueといったあたかもディレクトリ構造であるかの様な表記が出てきました。(たぶんAmazonが先駆者だと思う)

 さて、http://example.com/hoge/tom/valueだとちょっとスクリプトがどこかわかりづらいので、http://example.com/hoge.cgi/tom/valueを例にとりましょう。"hoge.cgi"以降の情報を取得するには、$ENV{'PATH_INFO'}を使います。
#Script1
print $ENV{'PATH_INFO'};
【結果】/tom/value

これをパラメータとして取得するには、頭の/を落として、/でsplitしてやればいいわけです。
#Script2
my $param = $ENV{'PATH_INFO'};
$param =~ s/^\///;
my @data = split('/',$param);
print join('&',@data);
【結果】tom&value


【続きがあります】
タグ:Perl Apache
posted by 鯖缶 at 20:48 | Comment(0) | TrackBack(0) | ただいま開発中 | このブログの読者になる | 更新情報をチェックする

リファレンスされた配列の最後の添え字の取得

 ちょっとググり方が悪かったのか、すでに常識なのかはわからないけど、試行錯誤して解決したのでメモ。

 Perlにおいて配列の最後の添え字(番号)を取得するには、$#配列名(例:$#array)であることは基本中の基本です。
 では、リファレンスに入っている配列の最終番号を取得するにはどうしたらいいのか。

解法1:scalar関数を使う
my $lastnum = scalar(@$ref_array) -1;

解法2:$#でがんばる
my $lastnum = $#{$ref_array};


解法2の方がわかりやすいというかシンプルというか好み。
(区切りに{}が使えることを知らんかったよ・・・)

ちなみにこんな複雑なことも可能
my $lastnum = $#{$hash{'list'}};
# %hashの'list'の値に配列へのリファレンスが入っている場合
posted by 鯖缶 at 19:03 | Comment(0) | TrackBack(0) | ただいま開発中 | このブログの読者になる | 更新情報をチェックする

2012年01月10日

/usr/bin/perl^M: bad interprete

今日新しいプログラムの開発に取りかかったところ、シェル上で
-bash: ./prova.cgi: /usr/bin/perl^M: bad interpreter: そのようなファイルやディレクトリはありません

というエラーが。
Apacheのエラーログにも
(2)No such file or directory: exec of '/hoge/prova.cgi' failed

とエラーが吐かれています。

/usr/bin/perlはちゃんとあるし、パーミッションも実行可能になっている・・・しかも他のスクリプトはちゃんと動いているのになぜか、と思っていましたが、

改行コードがCR+LFになっていました。改行コードをLFで保存し直してちゃんと動きました。

久々にイチから書き始めたとはいえ、基本的なところでした。
bad interpreterが出たら、まずは改行コードを疑ってみよう。(特にDOS(Windows)で書いてLinuxで実行している場合)


# ちなみにprova.cgiというのは、今新しく作っているプログラムです。
# ティロ・フィナーレと同じくイタリア語です。
# 英語でいうとtestですね。まあ、そういうコンセプトのプログラム
posted by 鯖缶 at 15:08 | Comment(0) | TrackBack(0) | ただいま開発中 | このブログの読者になる | 更新情報をチェックする

2012年01月05日

スタードメインで.atを割引中

 SSL証明書の取得でお世話になっているネットオウルが提供するドメイン取得サイト、スタードメインで2012年1月31日18:00まで、各種ドメインを割り引き登録できます。
 今回の目玉は.at(オーストリア)の新規登録が680円でできることです。.atについては、前置詞の"at"や、@を連想させるとうことで、ccTLDではtoに次いで使いやすいと思います。そして、gTLDや.jpなどでは空いていないメジャーな名前も登録できる可能性があります。
 私のプライベートメールアドレスは、「名@姓.at」ですが、.jpは言うに及ばずgTLDはダメだったものの、.atが空いていましたのでバリュードメインで登録して使っています。今回、残念ながら移管や更新は割引の対象外ですが、これから家族のアドレスがほしいという人は登録を考えてみてもいいのではないでしょうか。
 ちなみに、私はバリュードメイン提供のDNSサーバを利用し、GoogleAppsで管理していますが、スタードメインでしたらDNSサーバに加えてメール転送が100個まで無料でついてきます。ついでに、10GB or 3GB+SQLのウェブサーバもついてきます。バリュードメインは4,430円(2012年1月5日現在)ですので、通常料金でも安いのです。atドメインの移管には対応していないようなのが悔やまれますが、他のドメインもバリュードメインよりも微妙に安いので、新たに取得する分はこっちで取ろうかとも思います。(移管の手間をかけるほどではないかな)
posted by 鯖缶 at 18:55 | Comment(0) | TrackBack(0) | その他 | このブログの読者になる | 更新情報をチェックする

2011年12月23日

【緊急】掲示板レンタルの停止について

cgi-bin.jpにてレンタルしている掲示板レンタル3種につきまして、管理上の問題が発生したため緊急にサービスの停止をさせていただきました。

【現象】
 広告を提供している会社より不適切なコンテンツが掲載されているとの指摘があり、メンテナンスを行おうとしたところ、全ての掲示板のログが消えた。

【原因】
 管理プログラムが古いサーバにしか対応しておらず、全ての掲示板を「更新期限切れ」として判断したため削除の対象となってしまった。

【対応】
 ファイルが削除されているためログを復活させることはできず、また他の異常が発生する可能性もあるため、掲示板レンタルの提供を停止させていただきました。
 今後、コードをチェックの上再提供させていただきますが、その際には新規に作成が必要になります。また、今回広告提供会社より指摘があった原因となっているスパム投稿についても、それを抑制する手段を備えた上での再開とさせていただきます。

【ご注意】
 他のサービスにつきましても、順次コードのチェック・更新をしていきます。それに伴い、サービスの一時停止、データの消失が発生する可能性がございます。


 この度は、掲示板をご利用できなくなりましたこと、誠に申し訳なく思います。
 今回の事態は掲示板レンタルのプログラムが、技術的・社会的情勢に追いついていないことを放置したことにより発生したものと認識しております。掲示板をご利用いただいておりました皆様には、ただ平謝りする他ございませんが、何卒ご理解をいただきたく、お願い申し上げます。(追記あり)
posted by 鯖缶 at 17:56 | 障害・メンテナンス | このブログの読者になる | 更新情報をチェックする

2011年12月11日

ひまわり証券とは(ひまわりFXの紹介)

久々の投資ネタです。
 現在、株はSBI証券で運用、FXは休止中の鯖缶ですが、円高継続中ということでFXを再開しようかと、各社の条件を検討中です。

 FXはオリックス証券・外為ドットコム・ひまわり証券・マネーパートナーズ・FXアジアと渡り歩いてきましたが、身を引いた後で分別保管が義務づけられたり金融庁の監督を受けるようになったりと、色々様相が変わってきたので、再開するに当たり各社のサービス・条件を調べ直す必要が出てきました。

 ちなみに、ひまわり証券については「ひまわり証券とは」にも詳しく書いてありますが、比較的早期にデイトレ口座をリリースしたことが印象的でした。ただ、私はスワップも受け取りたいし、強制決済されるのは好みに合わなかったのでレギュラー口座にしていました。
(追記あり)
posted by 鯖缶 at 01:24 | Comment(0) | TrackBack(0) | 商品紹介 | このブログの読者になる | 更新情報をチェックする

2011年12月08日

SSL証明書の更新の時期が近づく

fms.cgi-bin.jpで使用しているSSL証明書の更新時期が近づいています。(1月18日に失効です)





cgi-bin.jpで利用している証明書は、もっぱら↑SSLボックス
(ネットオウル)経由のRapidSSLです。
理由は安いから。
運営者に関する情報は証明してくれないけど、通販サイトじゃないのでそんな必要ないし、技術的なセキュリティが確保されればOKってことで。
・・・まあ、SSL証明書入れても、コンテンツがなければ無駄遣いなんですけど。
posted by 鯖缶 at 13:23 | Comment(0) | TrackBack(0) | その他 | このブログの読者になる | 更新情報をチェックする

2011年12月03日

シュタゲ公式ガイドがまだ届かない

TV Anime Steins;Gate OFFICIAL GUIDEBOOK 記憶補完のモノグラフをAmazon.co.jpで予約していましたが・・・まだ届きません。12月1日には発送されているのに・・・。
発送先は関東なのになぜ大阪から発送するのか。千葉からでいいじゃなイカ。

Amazon.co.jpで予約しておいたのですが・・・昨日(12/2)にページを確認したら、当日お届け可能になってるじゃないですか。

そういや、ひだまりスケッチ×SP 【完全生産限定版】 [Blu-ray]も随分と届くのが遅かった。

年会費払ってアマゾンプライムに登録しているんだから、予約商品もお急ぎ便を適用してほしいところ。梱包に関する意見のフォームはあるくせに、配送とかプライムに関する意見フォームはない模様。カスタマーサービスにメール入れておくか。

あと、佐川の追跡サービスよりAmazonの配送状況の方が詳細に出てくるって、どういうこと?

と、不満を書いてるくせにしっかりリンクは貼っておくという・・・



## この後、午後5時頃にやっと届きました。ひだまりSPよりは早かった。
posted by 鯖缶 at 15:10 | Comment(0) | TrackBack(0) | その他 | このブログの読者になる | 更新情報をチェックする