にしし ふぁくとりー:西村文宏 個人サイト

Presented by Nishishi via Movable Type. Last Updated: 2019/03/20. 14:24:00.

Sakura Scope (2013年05月)

ちょっと倒錯気味な、ただの日記です。(^^;)
これはやばいと思われた場合は、お早めに閲覧を中止されることをお勧め致します。

複数のバナー画像がふわっと切り替わっていく画像効果を作る

複数の画像がふわっと切り替わるスライドショーを作る

「次の画像」が「今の画像」の上にフェイドインしてくる形で、複数の画像が「ふわっと」切り替わる効果(スライドショー)をよく見かけるようになりました。
そんな効果をJavaScriptで作る方法の解説記事をAll Aboutで公開しました。

■『複数の画像がふわっと切り替わるスライドショーを作る』(@All About ホームページ作成)

BSDライセンスで配布されているjQueryを活用したスライドショースクリプトの使い方を紹介しています。
jQueryを使うと、JavaScriptソースの記述量がとても短くできて楽ですね。

本文中に目印を付けるには、ポストイット「透明スリム見出し」が便利

書籍の本文中に、後から参照する目的で目印を付ける際には、以前からポストイットの「透明スリム見出し」という製品を愛用しています。

ポストイット「透明スリム見出し」 本文に目印を付けるには「透明スリム見出し」が便利

「ポストイット」(Post-it)には違いないんですが、材質は紙ではありません。
メジャーな紙製のポストイットと違って、

  • 背後が透けて見えるので、本文の上から貼っても下の文字が読める
  • 紙製のポストイットよりもしっかり貼れるので剥がれにくい (※剥がそうと思えば簡単に剥がれますし、貼り直しも可能です。)

という利点があるので、紙製のポストイットよりも値段は高いんですが、この「透明スリム見出し」ばっかりを買っています。
全部で9色あって、先端だけに色が付いているんですが(全面に色が付いているタイプの製品もあります)、色の付いている部分も背後は透過しています。なので、小さい本のように、ページの端っこ付近にまで本文が印刷されている本に貼っても、まったく問題ありません。

便利です。

材質はフィルム(ポリエステルフィルム)なんですが、紙製のポストイットと同じように、ちゃんと上から鉛筆で文字を書くこともできます。まあ、目印を付ける目的だけに使うことが多いので、あまり上から文字を書いておきたいと思うことはないんですけども。(^_^;) 「透明の部分」にも「色の付いている部分」にも、同じように鉛筆で文字が書けます。

10個セット「エコノパック」を買った

これまでは、この「透明スリム見出し」パッケージを、なくなる都度1個単位で購入していたんですけども、10個入りのセットを買うと結構安いことに気付いたので、10個セットを購入しました。(下記写真参照)

ポストイット「透明スリム見出し」10個エコノパックの中身(^_^;)

薄いプラスチックの箱に入った10セットの「透明スリム見出し」です。
中身を全部出してみると壮観です。(^_^;;;
製品1個には、各20枚×9色で計180枚が入っていますから、合計で1,800枚。^^;

値段は、

安いです。^^;
1個に180枚入っているわけですから、

  • 1個単位で買えば、透明スリム見出し1枚あたり、2.1円。
  • 10個セットで買えば、透明スリム見出し1枚当たり、1.27円。

約4割も安くなるとは。(^_^;;;

しかしまあ、10個も一気に買っちゃうと、もうしばらく買う必要はないでしょうね……。(^_^;;;
たぶん数ヶ月は充分持つでしょう。

ちなみに、ポストイットの「透明見出し」には、1枚の幅が太い製品もあります。たぶん、1cmくらい。
そっちの方が安いので、昔はそっちばかり使っていたんですが、それだとだいたい1枚で2行分くらいの幅があるので、ピンポイントでは場所を指しにくいです。(^_^;)
細い「透明スリム見出し」の方だと、幅が6mmなので、大半の書籍で「本文の1行だけ」を指し示せて便利です。

ポスト・イット 透明スリム見出し(@Amazon.co.jp)

スタイルシートで画像の中に文字を入れる方法

画像上の自由な位置に文字を重ねる方法ウェブページ上に表示している画像の中に、任意の文字を入れたい……という場合がたまにあります。
画像を直接加工して、文字を画像内に描き込んでしまうという手もありますが、作成するのに非常に手間がかかってしまいますし、なにより修正したくなった際の作業が面倒極まりありません。直接文字を描き込むのは非効率です。

ウェブページ上の話であれば、わざわざ画像を加工して文字を描き込む必要などまったくなく、スタイルシートを使うことで、簡単に画像の中に文字を入れることができます。
もちろん、表示する位置もサイズも自由に指定できます。(単に、文字の表示位置が画像の上になるようスタイルシートで配置を調整するだけですから。)

そんな、画像内の任意の位置に文字を入れるスタイルシートの書き方を解説した記事を、2004年にAll Aboutで公開していました。
やはり、画像に文字を入れる需要は多いのかして、公開から9年経った現在でもそこそこ閲覧され続けている記事です。

というわけで、解説画像を増やしたり、解説文を見直したりして、80%くらい改稿した新版記事を公開しました。

■『画像上の自由な位置に文字を重ねる方法』(@All About ホームページ作成)

画像を直接加工して文字を描き込むことなく、画像の中に文字を入れたいと思ったときには、ぜひご参照下さい。^^;
記述するスタイルシートは、とても短いものですから、とても簡単にできます。

3日間倒れてました

処方された薬先週の金曜日に、ちょっと喉が痛くなってきました。唾液を飲み込むだけでも喉に違和感があるな……という感じ。市販の風邪薬を飲んで凌いでいたところ、翌日にはそこそこ症状が引いたので、ああこれは治ったのかな……と思っていたんですが、今度は日曜日に鼻水が止まらなくなりました。(^_^;;;

日曜日に一日寝ていれば、まあ回復するだろう……と思っていたんですけども、回復どころか悪化してしまいまして、気温は暑いし汗もかくのに、同時に寒気もするという謎の症状を体験。^^; 全身がだるくなって、久しぶりに熱が出てしまったので、仕方なく月曜日に近所の内科でいろいろ薬を貰ってきました。

これで、月曜日一日寝ていれば治るだろう……と思っていたんですけども(^_^;)、全然そんなことなくて、結局、火曜日も丸々一日寝ている羽目になり、水曜日の午後にようやく回復した感じです。日曜日~火曜日まで丸三日間倒れていたことに。

丸々三日間(水曜日も含めると四日間)、さっぱり仕事の作業が進められなかったのはちょっと痛い。
とはいえ、直近に迫っている〆切がなかったことと、それまでに結構順調に進んでいたこともあって、大事には至りませんでしたけども。

ううーん、金曜日に喉の調子が悪くなった時点で、土曜日辺りに内科へ行って抗生物質を貰っていれば、ここまで長引きはしなかったのかな……。今度からはもっと早く行こう……。(-_-)

JRの駅ビルの中という、立地条件は結構良さそうなのに、いつ行っても空いていて待ち時間がほとんど無いという穴場のような内科もあることだし……。(^_^;;;
月曜日の朝に行ったときも、待っている患者は誰も居なくて、着いてから2分後くらいには診察室に呼ばれて、5分と経たずに処方箋発行。調剤薬局でも患者ゼロで待ち時間はほとんどなかったので、トータルで20分もかからなかったという……。いつも経営が心配になるんですが、潰れてないってことは、他の時間帯にはちゃんと患者さんが居るってことなんでしょうね?(^_^;)

今回、改めて思いましたが、内科で薬を処方して貰う方が安いですね。風邪薬を薬局で買うだけでも、5日分で安くても1,500円くらいはしますし、症状に合わせて薬を替えたらさらに必要です。でも内科で薬をもらえば、診察代と合わせて1,800円くらいでもっと症状にあった効き目の高い薬が得られるわけですからね……。
最初から医者に掛かる方が安いですよね……。健康保険ありがたいなあ。^^;;;

なお、寝ていた間、iPod touchが役に立ちました。ブラウザを起動して、Twitterにアクセスしたり、メールを読み書きしたりはできたので。ソフトキーボードの入力は、さすがにハードキーボードほど早くは打てませんでしたけども、最低限のことはできましたし。便利ですね、携帯端末。重量が88gなので、寝ながら持っても全然重たくないのが良いです。^^;

自分が使っているIPアドレス以外からのアクセスを拒否する方法も

「CMSにおける不正アクセスの危険性および対策について」レンタルサーバ会社から、CMSツールへの不正アクセスが横行している現状への対処方法などが記されたメールが届きました。

もし、CMSツールの管理を自分一人でしか行わないのであれば(たいていの個人サイトはそうだと思いますが)、自分が今使っているIPアドレスからしか管理画面にアクセスできないようにウェブサーバ側の設定で制限しちゃうのも1つの手のような気がします。
もし、ログイン画面へのアクセスを(自分以外のアクセスからは)すべてブロックできれば、不正ログインを『試される』こと自体を防げますし。
(もちろん、だからといって IDやパスワードをすぐにバレるような簡単なものにして良いわけではありませんが。)

ウェブサーバがApacheであれば、.htaccessファイルに以下の3行を書いておくだけで、IPアドレス 210.224.168.100 以外からのアクセスを全てブロックします。

order deny,allow
deny from all
allow from 210.224.168.100

なので、このような記述を含めた.htaccessファイルを、CMSの管理用ファイルのあるディレクトリに入れておけば良いと思います。
自宅で常時接続環境を使っているのであれば、割り振られたIPアドレスは長期間変わらないことも多いと思うので、その場合は特にこの手で楽にいけそうな気が。
もちろん、IPアドレスが変わってもその都度設定を変更すれば良いだけです。このアクセス制限は、ウェブ上から(ブラウザなどで)アクセスできなくなるだけなので、FTPなどは従来通り制限なしで使えます。

「IPアドレス」だけでなく「ホスト名」での指定もできるので、大学とか会社とか、組織内部からの場合にはその方が便利かも知れません。

ディレクトリを丸ごとアクセス制限できないなら、ログイン用のCGIなりPHPなりだけに絞って制限することも。
例えば以下のように書いておけば、 login.cgi へのアクセスだけを制限できます。

<Files login.cgi>
   order deny,allow
   deny from all
   allow from 210.224.168.100
</Files>

……というような記事を、2008年に書いていますので参考にどうぞ。(^_^;;;
指定ファイルへのアクセスを拒否する方法」(4ページ目)

あと、忘れがちな気もしますが、アクセス制限以前に「使っていないCMSはサーバから削除する」というのも大切ですね……。
実験としてアップロードしたまま、結局使わずに放置……とか。

その場で(そのページ上に重なるようにして)拡大画像を表示させる方法

別窓を開かずに、その場で拡大画像を表示する方法複数の写真や画像を並べたアルバムページ(ギャラリーコーナー)などでは、オリジナルの画像を縮小したサムネイル画像を並べておいて、それらがクリックされたときにだけ大きな画像を表示させる仕組みがよく使われています。

サムネイル画像がクリックされたときに、拡大画像専用ページへ移動することなく、ポップアップウインドウを出すこともなく、その場で(そのページ上に重なるようにして)拡大画像を表示させる方法を解説した記事を、2008年にAll Aboutで公開していました。
その記事を、5年ぶりにアップデートしました。

「別窓を開かずに、その場で拡大画像を表示する方法」(@All About ホームページ作成)

この手のスクリプトでは、JavaScriptで作られた「Lightbox」(Lightbox2)がよく使われている気がします。
この記事で紹介しているのは、「Lightbox」と(使用方法に)互換性を持たせたスクリプト「Lightbox Plus」です。
こちらは、本家の「Lightbox2」と違ってjQueryを必要としないので、その分、簡単に設置できます。(まあ、既にjQueryを使っている方々の場合には関係のない話ですが。^^;)

この記事を2008年に公開して以降、「Lightbox Plus」の方も改良を加えられていてバージョンアップしていました。
「その場で拡大画像を表示させる」という仕組み自体にも、かなり需要があるようで、記事もそこそこ読まれているようでしたので、現状に合わせてアップデートしたのでした。

ドロップダウンメニューを作るJavaScriptはjQueryを使うと短くて済む

簡単なドロップダウンメニューの作り方(jQuery活用編)ウェブサイトのメニューバーに、ドロップダウンメニュー機能を加える方法の解説記事を、All Aboutで公開しました。横向きのメニューバー上に配置されたメインメニュー項目の上にマウスを載せると、自動的に縦方向にサブメニューが開く「ドロップダウンメニュー」を作る方法です。

■『簡単なドロップダウンメニューの作り方(jQuery活用編)』(@All About ホームページ作成)

リスト形式のHTMLを、メニューらしく見えるようCSSで装飾して、JavaScriptで表示を制御する方法です。メニューの開閉を制御するJavaScript部分には、「jQuery」を活用しているので、記述量がものすごく短くなっています。むしろ、記述量で最も長いのはCSSの方です。
便利ですねえ、jQuery……。(^_^;;;

簡単に作れますので、ぜひ、試してみて下さい。

森博嗣の新書が3月に出たと思ったら5月にも

森博嗣/新書2冊3月に、久しぶりに森 博嗣の新書が出たなあ、と思っていたんですが、今月にも別の新書が出ていました。
こんなに短い間隔で出るとは思わなかったので、ちょっと嬉しい。^^;

3月は新潮新書。
5月は朝日新書。

どうやら、今月に出た新書で、「新書」での出版は10冊目だそうです。
10冊なのか……。なんとなく、もっとある気がしていたんですけども。(^_^;)

……と思ったので、数えてみました。

No.新書タイトル出版社発売日
10「やりがいのある仕事」という幻想朝日新書2013/5/10
9人間はいろいろな問題についてどう考えていけば良いのか新潮新書2013/3/15
8科学的とはどういう意味か幻冬舎新書2011/6/29
7自分探しと楽しさについて集英社新書2011/2/17
6小説家という職業集英社新書2010/6/17
5創るセンス 工作の思考集英社新書2010/2/17
4自由をつくる自在に生きる集英社新書2009/11/17
3大学の話をしましょうか―最高学府のデバイスとポテンシャル中公新書ラクレ2005/10
2臨機応答・変問自在 2集英社新書2002/9/17
1臨機応答・変問自在 ―森助教授VS理系大学生集英社新書2001/4/17

たしかに、10冊ですね。^^;

iPod touchをセットアップした

先週届いた「iPod touch」のパッケージをようやく開梱しました。
下記写真の通り、黄色です。
(左端の画面イメージは、パッケージ上部にスクリーンの保護目的っぽい感じで貼り付けてあったシール。^^;)

iPod touch パッケージ開梱

本体の重さは、わずか 88グラム。
薄くて軽いです。
このディスプレイで、この薄さはすごいな……と、なかなか驚きました。

iPhoneではなくiPod touchですから、電話回線の接続は機能も契約もありません。
ネットワークに接続するにはWi-Fi(無線LAN)が必要です。
私は、普段ノートPCをネット接続するために、E-MOBILEの無線ルーターを持っているので、それを経由して接続すれば良いので問題ありません。

最初のセットアップ時にWi-Fi接続が必要だということは分かっていたので、一時的にMacアドレスによる接続制限を解除して、iPod touchのセットアップを実行。
ネットワークにはあっさり接続できました。

iOS上でMacアドレスを調べる方法をググろうかと一瞬思ったんですが、よく考えたら、ルーター側の管理画面で「今接続している機器のMacアドレス」が一覧表示されるので、iOS側で調べるまでもなく、そっちで判明するのでした。^^;
というわけで、iPod touchのMacアドレスを許可アドレスに追加して、再度Macアドレス制限を有効に。

※Macアドレスというのは、ネットワーク機器1つ1つに個別に付けられる識別番号のことで、コンピュータのMacとは無関係です。^^;

Apple IDの作成で、「そのIDは既に使われています」と文句を言われることが多かったりしましたが(^_^;)、他は特に問題なくスムーズにセットアップできた気がします。
自分のメールアドレスをIDにしても良かったんですが、まあせっかくなのでiCloudで新しいアカウントを開設しました。

本格的に触っている時間はなかったんですけども、ちょっとだけ触りました。
新しいデバイスは、なんか楽しくて良いですね。^^;

iPod touch セットアップ完了

とりあえず、ブラウザを起動して、自分のウェブの表示確認をしたり……。
主にそういうiOS上での確認が目的で手に入れたものですので。(^_^;;;
iPod touch上のSafariからだと、

Mozilla/5.0 (iPod; CPU iPhone OS 6_0_1 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) ......

のようなユーザエージェント名なんですねえ。

iPod touchには、iPhoneと違って、GPS機能は搭載されていません。
なので、位置情報はWi-Fiの無線局の情報を使って判断される仕様なんですが、公衆無線局ではなく自前のE-MOBILE端末経由でネット接続しているため、まったく位置は把握されませんでした。(^_^;;;
地図を表示させると、ただ日本が出てくるだけです。
現在位置は分からないみたいですね。
まあ、その辺は、あくまでも「携帯電話」ではなく「携帯音楽プレーヤー」なので仕方がないでしょうかね。(^_^;;;

それにしても薄いです。よくここまで薄くできたもんだなと、なかなか感心しました。
GPSとか電話機能とか、iPhoneよりも機能が削減されている分、iPhoneよりも軽くて薄いんだったような気が。

分かっていたことではありますが、ディスプレイが指紋だらけになりますね。^^;
何か表示されている間は特に気になりませんが、ディスプレイがOFFになると目立ちます。(^_^;;;

まあそんなわけで、ちょくちょく使っていきます。
まだ持ち歩いてはいないので、今、手元にはありません。^^;

スパム回避とスパム投稿のいたちごっこ

「BBS」や「ブログのコメント欄」や「メッセージフォーム」などのように、「何かを入力して送信できる」仕組みをウェブ上に公開していると、スパム投稿がたくさんやってきます。
なので、スパムを回避する仕組みを用意することになるわけですが、「スパムを回避する仕組み」を回避してくるスパム投稿も徐々に増えてくるため、いたちごっこです。

IPアドレスの制限は無意味

初期の頃は、それほど投稿数も多くなかった上に、投稿元のIPアドレスがほぼ固定だったので、IPアドレス単位でブラックリストに追加していけば対処できていました。でも今では異なるIPアドレスを大量に使い分けてくるのは当たり前なので、IPアドレスによるブロックは無意味です。20~30個くらいの大量投稿を一気に送ってくる場合でも、見事に全部異なるIPアドレスが使われていたりします。

スパム業者は爆発すればいいのに……。(-_-)

URLを含むとブロック

たいていのスパムは、スパムサイトへの誘導やSEO効果の獲得が目的なので、URLを書かないと意味がないのですよね。なので、『本文中にURLが含まれていたら問答無用で却下』という対策が取れるなら、そこそこ有効ではあります。(でも、中にはURLもメールアドレスも一切含まないスパムもあって、何が目的なんだろう?と困惑するものもあるんですが……。)

でも、「投稿者のウェブサイトの情報は書けるようにしたい」という場合もあります。
そういう場合には、「コメント本文にURLを含めたらアウトだけど、専用の入力欄に1つだけ入力した場合はOK」のようにします。……が、まあ、そうすると当然、そっちにスパムサイトのURLを書いたスパム投稿が来るわけですね。当たり前ですが。(^_^;;;

なので、URL以外の部分でスパムかどうかを自動判定させたいわけです。

日本語が存在するかどうか

日本語サイトで、日本語での投稿を前提とする場合には、『日本語が存在しなかったら却下』という手が使えます。これが、数年前まではわりと有効だったように思います。

日本語の文字はたくさんありますが、文字コードでは「この番号からこの番号までが漢字」みたいな区切りがあるので、それを利用して「指定範囲内にある文字だけを許可する」のような処理ができます。もしくは単純に「2バイト文字があるかどうか」だけの判定でも十分な頃もありました。それらの方法で、英語だけとか、ロシア語だけ……といったスパム投稿は完全にブロックできていました。

(外国からのスパムがたいてい英語だった頃は、英語スパムだけをターゲットにすれば良かったので、「this」・「that」みたいな頻出の英単語を禁止単語に指定しておくことでも、わりと自動対処できましたが。今ではロシア語とか中国語とかのスパムもたくさんあるので、その方法では不足です。)

で、そのうち、本文中にほんの少しだけ2バイト文字(日本語文字など)を含ませたスパム投稿が出てきたんですよね……。すると、日本語文字の存在をチェックしているだけでは、判定をすり抜けてしまいます。

平仮名が存在するかどうか

なので、ちょっと制限を厳しくして、『ひらがなを1文字も含まない投稿は却下』という対策に変えることで、しばらくは有効でした。
日本語の文章の場合、ひらがなを1文字も含まないことは(ほぼ)ないでしょうからね。

でも、スパム投稿側にも、ひらがなを1文字だけ含めてくる……みたいな回避策が出てきたので、

句読点が存在するかどうか

もっと厳しくして、『句読点を1文字も含まない投稿は却下』のようにすると、さらに有効でした。

日本語による投稿であっても、驚嘆文と疑問文だけしか書かない場合には、文末に「!」と「?」が使われるので句読点が1文字もないことはあるかも知れませんが。(笑)
あと、そもそも普段から句読点をまったく使わない人も居ますしね……。

でもまあ、そういう投稿の場合には、「句読点を書いてね」のような表示をすることで対処できます。戻って投稿し直す手間を掛けることにはなりますが、「句読点」という言葉の意味が分かれば、何を追加すれば良いのかは簡単に分かりますから。

これが結構長い間有効だったように思います。

しかーし!

適当に拾ってきた文章を使ってくる!

スパム業者の回避能力も年々向上していまして、最近は、「ネット上で適当に収集したそこそこ長い日本語文」を使って投稿してくるのですよ……。内容に全然脈絡はないんですが、日本語としては成立しているので、「日本語の有無」とか「句読点の有無」のような対策ではブロックできません。

これが結構困ります。

ちゃんと日本語として成立している文章なので、ぱっと見ただけではスパムだとは思えません。なので、ある程度読んじゃうんですよね。「なんでこんな関係ない話を書いてくるんだ、この人は……?」と思って、「おかしいな……、投稿先を間違えたのかな?」と思い、人物名を見ると「グッチ」、URL欄を見ると「チープグッチ・ドットコム」みたいなスパムURLになっていたり……。

スパム業者、爆発しろ!(-_-メ)

もっと巧妙なのは、「ブログのコメント投稿欄」のように、「コメント欄の上部に、そこそこ長い文章が掲載されているページ」の場合、その本文内から適当に抜粋した文字列をそのまま使って投稿してくるんですよ。
その場合、一見すると脈絡があるように感じてしまいます。話題が同じなので。
よーく見ると、「あれ? これって本文のコピペじゃない?」と気付くわけですが。

キーワードブラックリスト

最近は、(少なくとも私が管理している範囲では)どうもブランド名を含んだスパム投稿が多いので、いっそ国内外のあらゆるブランド名を列挙したデータを作って、それらを含む投稿を一括ブロックしようかとも思ったりしています……。(^_^;;;
私のサイトの場合だと、ブランド名をコメントに含めるような話題が出ることはまずありませんし。(^_^;;;

スパムサイトは、SEO効果を気にしているので、URL内にもブランド名がそのまま使われていることも多々あります。その点でもブロックしやすいかも知れません。
でもまあ、URLに使われているドメイン名すらランダム文字列にしか見えないスパムサイトもありますが……。
それに、多いとはいえ全部ではありませんしね……。日本語表記と英語表記だけならともかく、ロシア語や中国語でのブランド名は分かりませんし。(調べてリストアップするのも面倒ですし。)

URL欄・NAME欄に何か書いたらアウト

そこで、新たな対策として最近は、ダミーの「URL入力欄」・ダミーの「NAME入力欄」を用意しておいて、そこに何かを入力された投稿は、問答無用で却下……という対策を取っています。ダミーの入力欄は、CSSを使って、ブラウザ上では見えないようにしてあるので、CSSを無効にしているような特殊な環境でない限り、ダミーの入力欄は見えません。

スパム業者は、1ページ1ページ人力で入力欄をチェックしたりなど当然していません。クローラーに巡回させて、入力欄のあるページを片っ端から収集しているのでしょう。
なので、HTML内に入力欄があれば、それらの中に非表示になっているダミー入力欄があるとは考えないはずです。

今の入力フォームの項目名は、そのものずばりシンプルすぎるんですよね。

  • 「name」が、名前の入力欄
  • 「url」が、URLの入力欄
  • 「comment」が、コメント本文の入力欄

……のように。

なので、それを以下のようにします。

  • 「ix-jPa81」が、名前の入力欄
  • 「jxtw0fy9」が、URLの入力欄
  • 「ppxy3Iha」が、コメント本文の入力欄
  • 「name」が、ダミーの入力欄(何か入力したら問答無用で拒否)
  • 「url」も、ダミーの入力欄(何か入力したら問答無用で拒否)
  • 「comment」も、ダミーの入力欄(何か入力したら問答無用で拒否)

……のような。(^_^;;;
正規の入力欄に使われている項目名は、動的に生成するようにして、毎回異なるとさらに良いかも知れません。

HTML内に存在しない項目に何か書いたらアウト

スパム投稿では、そもそも投稿ページ(HTML)側に「どのような入力欄があるか」すらチェックしておらず、直接CGIに(name欄やurl欄があることを前提にした)データを送っている場合もありそうです。
その場合、送られてくる投稿データ内には、「HTML側には用意していない名称の項目」も含まれている可能性が高いでしょう。そこもチェックするようにして、「HTML側で用意していない入力欄」に対するデータがあったら拒否、としても良いかもしれません。(使っているCGIが、様々なページから共通に利用されている汎用なものだったらちょっと面倒ですが。)

CAPTCHA

まあでも、スパム対策で強いのは、たぶん「CAPTCHA」(キャプチャ)ですよね。
CAPTCHAというのは、自動解析にしにくい「歪んだ文字列」が表示される画像を読んで、そこに描かれている文字が何なのかの入力を求めることで、「入力者がコンピュータではない」ことを確認する仕組みです。
大手企業が提供するサービスでの、アカウント開設画面などでよく使われています。

人間の側にも多少の面倒を強いることになりますが。
これを使えたら、スパム投稿もほぼ防げるんでしょうねえ……。(^_^;;;

「スマートフォン」表記が「スマホ」表記に追い越されたタイミング:現状での差は6倍

Google Trendsという、単語の検索量の傾向を調べられるツールがあります。
これを使って、スマートフォンを意味する4種類の表記「スマートフォン」・「スマートホン」・「スマフォ」・「スマホ」を比較してみたところ、以下のようなグラフが出てきました。

「スマートフォン」表記のピークは2011年7月でそこから下降。「スマホ」表記の方が年々増えて、2012年1月に追い越し。
(▲画像をクリックすると、Google Trendsサイト上へ移動して現状のグラフを表示します。)

最初は、2010年頃から「スマートフォン」の表記が徐々に増えていきますが、ピークは2011年7月で、それ以降は下降を続けています。
一方、1年ほど遅れて2011年初頭から「スマホ」表記が使われ初めて年々増えていき、翌年の2012年1月には「スマートフォン」表記を追い越していました!(^_^;;;

今では、「スマホ」表記は「スマートフォン」表記よりも6倍くらい多く差がついていますね……。(2013年3月では、最大で6.25倍になっていました。)
見事に逆転していますね。(^_^;;;

やっぱり、もはや世間での呼び名は「スマホ」なのか……。

元のカタカナを考えれば、せめて「スマフォ」じゃないかと思ったりもするんですが、まったくと言っていいほど使われていませんね……。(^_^;;;
「スマフォ」と「スマートホン」は、少なくともGoogle Trends上では、ほとんどグラフに現れてきていません。
まあ、「スマートホン」はそうだろうと思いますけども。

私は、略さずに「スマートフォン」と呼ぶのが好きです。(^_^;;;

※Google Trendsで得られるのは、「検索語として利用された単語」の検索量の傾向ですから、「実際にウェブ上で使われている単語」の傾向を表しているわけではありません。

iPod touchが届いた! 第5世代(iOS6搭載版)

注文していた「iPod touch」が届きました。
iOS6搭載の第5世代版iPod touch、32GBのイエローモデルです。
これで、iOSが使える……!

最新モデル 第5世代(iOS6) Apple iPod touch イエロー 32GB

外見は本当にスマートフォン(iPhone)ですね。電話回線への接続機能はありませんが。(^_^;) もはや「携帯音楽プレーヤー」だとは思えない。^^; OSはiPhoneと同じiOS6ですが、CPUは異なります。(iPhone5はA6チップですが、このiPod touchはA5チップ。)

透明のごついケースが綺麗です。
驚くほどの簡易包装でした。上写真にある透明のごついケースを、薄い紙で覆ってあるだけ。(下記写真参照)
私はAmazon経由で買ったんですけども、Apple Storeとか家電店の店頭で購入した場合でも同じなんですかね?^^;

iPod touch 包装 iPod touch こんな感じで包まれてた(^_^;)

で、中身はまだ開けてません。
今、すごく忙しいので、数日は触る余裕が無いと思います……。(^_^;;;

Android OSはエミュレータで使っていましたが、iOSにまともに触れるのはこれが初めて。主にiOS上でいろいろ動作確認する目的で買ったんですけども、せっかくなのでiTunes経由でMP3ファイルを入れて、音楽プレーヤーとしても活用するつもりです。(^_^;)

Android端末を手に入れるか、iOS端末を手に入れるかでちょっと迷ったんですけども、まあ、AndroidはWindows上でも動くエミュレータがあるので、とりあえずiOS端末を先にしたのでした。小型で軽くて(でも月額料金は不要な)ちょうど良い端末でもありますし。Android OSは、実機で使うとしたらタブレットでいいかなと。Googleのタブレット「Nexus」がわりと安いので。(iPadどころか、このiPod touchよりもNexus7の方が安いです。^^;;;)

ちなみに、この「iPod touch」は、Apple Storeで買うと割引がなさげでしたが、Amazonだと4.5%OFFくらいだったので、Amazon経由で買いました。^^;
最新モデル 第5世代(iOS6) Apple iPod touch イエロー 32GB(@Amazon.co.jp)

佐賀県鳥栖市の配送センターから発送されてた

Amazonで一昨日に、全く異なるジャンルの品物(電子機器と日用品)を20分差くらいで注文しました。
注文番号自体は別々に割り振られていますが、どうやら配送は1つにまとめられたようです。Amazonから昨日に届いた発送案内メール2通の中身を読むと、配送の伝票番号が同じでしたので。
注文自体が独立していても、まとめて同一の箱で配送できる仕組みになったんですねえ。単に注文のタイミングが近かったからか、それとも、「品物の確保を開始するよりも前の注文」なら全部まとめる仕様なのかは分かりませんが。

で、Amazonサイト上で確認すると、発送は佐賀県鳥栖市の配送センターでした。
佐賀県!
九州から発送されてくるのは、もしかして初めてじゃないかな……?
同じ西日本とはいえ、直線距離では東京の方が近そうな気もするんですが。(^_^;;;
しかも、Amazonとしては久しぶりにクロネコ経由での配送です。(下図参照)

佐賀県鳥栖市の配送センターから発送されてた

Amazonは、大阪府堺市にも倉庫がありますが、あんまりそこから配送されてくることはない気がします。
たいていは東京(千葉だっけ?^^;)から来るような気が。
配送業者は、これまでAmazonの場合、ほとんどが佐川急便でした。たまに、郵便局があるくらいで。
なので今回は、佐賀県からクロネコが届けてくるという、ずいぶん稀なケースです。

もしかして、珍しく佐賀県の配送センターから送られてくるのは、『注文した2品を同時に発送可能なのが佐賀の倉庫だけだった』とかですかね?
単品単位の注文だったら、いつものように関東から送られてきたかも知れませんけども。
異なる倉庫から2箱で送るよりも、多少距離があっても1箱にまとめて送る方が、(Amazonが負担する)送料は安く済むでしょうからね……。
離島とかでない限り、国内のどこから発送しても、たいてい発送の翌日には届きますから、受け取る側としてはどこの倉庫から発送されても特に影響はありませんし。

ちなみに、facebook経由で頂いたコメントによると、佐賀県鳥栖市の倉庫は、国内で最も新しく建設されたAmazonの配送センターらしいです。
どんどん倉庫を増やしているんですねえ……。

Amazonや楽天ブックスの長いURLは間や末尾を削除して短くできる

ショッピングサイトなどでは、SEO効果を狙って、URL内に日本語商品名をそのまま含ませているところがよくあります。
そういったサイトでは、たいていURLから日本語部分をごっそり排除しても同じページが見えます。
なので、文字数制限のある場所にURLを書きたい場合には、日本語部分を削除してしまうと良いです。文字数制限が特にない場合でも、余計な文字列がない方がスッキリ見えるので良い気もします。^^;

AmazonのURLを短くする

Amazonでは、何も気にせずにブラウザでアクセスすると、例えば以下のような非常に長いURLになってしまいます。(どうやってそのページに到達したか次第で、URL末尾に付加される文字列が異なります。)
http://www.amazon.co.jp/%E3%82%AB%E3%83%BC%E3%83%89%E3%82%AD%E3%83%A3%E3%83%97%E3%82%BF%E3%83%BC%E3%81%95%E3%81%8F%E3%82%89-1-KC%E3%83%87%E3%83%A9%E3%83%83%E3%82%AF%E3%82%B9-743-CLAMP/dp/4063197433/ref=sr_1_4?ie=UTF8&qid=1367801627&sr=8-4&keywords=%E3%82%AB%E3%83%BC%E3%83%89%E3%82%AD%E3%83%A3%E3%83%97%E3%82%BF%E3%83%BC%E3%81%95%E3%81%8F%E3%82%89

AmazonのURLに含まれている「ドメイン名直後のスラッシュ」から「/dp/」までの間と、「/ref=」以降のすべての部分は削除しても問題ありません。その結果、以下のようなアドレスでも同じページにアクセス可能です。
http://www.amazon.co.jp/dp/4063197433/

さらに、Amazonのドメイン名からは、サブドメイン名の「www.」と、第2レベルドメインの「co.」を削除して、amazon.jpドメインでも同じページが見えます。
最後のスラッシュも削除して、以下のようなアドレスでも同じページにアクセス可能です。
http://amazon.jp/dp/4063197433

このURLでアクセスすると、「www.」だけは自動補完されるようリダイレクトされました。でも、末尾のスラッシュは補完されません。この場合の最後のスラッシュ記号は、「ディレクトリの区切り」というわけではないので不要なのでしょうね。

楽天ブックスのURLを短くする

楽天ブックスでも、何も気にせずにブラウザでアクセスすると、以下のような長いURLになります。(末尾にアクセス経路などの情報が付かない分、Amazonよりは短いですが。^^;)
http://books.rakuten.co.jp/rb/%E3%82%AB%E3%83%BC%E3%83%89%E3%82%AD%E3%83%A3%E3%83%97%E3%82%BF%E3%83%BC%E3%81%95%E3%81%8F%E3%82%89%EF%BC%881%EF%BC%89-%EF%BC%A3%EF%BC%AC%EF%BC%A1%EF%BC%AD%EF%BC%B0-9784063197433/item/845008/

こちらの場合も、真ん中にある商品名部分をまるごと削除しても、同じページが見えます。
http://books.rakuten.co.jp/rb/item/845008/

ドメイン名と商品固有の番号との間に、「rb」と「item」という文字列があります。これは、どちらか一方があれば良いようですので、以下のようにさらに短くできます。^^;
http://books.rakuten.co.jp/item/845008/
http://books.rakuten.co.jp/rb/845008/

これらのURLにアクセスすると、最初の長いURLの方(日本語商品名を含むURL)にリダイレクトされます。

hontoのURLは最初から短い

ネット書店の「honto」は、最初から日本語部分を含まないURLで潔いです。^^;
http://honto.jp/netstore/pd-book_01933985.html

……とここまで書いて気付いたんですが、
どうやら2006年にも似たような話題のエントリを書いていたようでした。(^_^;;;
→「AmazonのURLで紹介したいときはASIN番号までで十分」(2006年5月10日)
でもどうやら、2006年当時のAmazonのURLは、今とはちょっと異なっていたようです。一部を省略して短くできることに変わりはありませんが、(最初に表示される)元々のURLの構成が若干異なります。

ワンタイムパスワード生成機が届いた

オンラインバンキングへのログイン時に使う、ワンタイムパスワード生成機が届きました。このキーホルダー型の機械は、1分ごとに「使い捨てのパスワード」を自動生成し続けます。

今後は、オンラインバンキングへのログイン時には、この機器が「そのとき表示しているパスワード」も入力する必要があります。1分間しか有効時間がないパスワードを利用するので、安全性が向上する……というセキュリティ機器です。(この自動生成パスワードのみでログインできるわけではなく、暗証番号等を入力する「従来のログインステップ」に1手間増やす形です。)

利用料金が無料になったので、申し込んでいたのでした。
(従来の利用料がいくらだったかは忘れましたが、たしか月額いくらかかかる形態の有料サービスだった気がします。)

じーっと見ていると、たしかに1分ごとに異なる文字列が液晶に表示されます。
横断歩道の歩行者用信号機には、徐々に棒の数が減っていって残り時間を示す「カウントダウン棒」の付いたものがありますが、あれのようなカウントダウン棒が端に表示されているので、「今表示されているパスワードの有効秒数があとどれくらいか?」が分かります。
そこを気にしつつ入力すれば、「パスワードの入力最中にパスワードが変化しちゃった」ということは避けられそうです。

なかなか良くできていますね。
これで数年間(背面に有効期限が刻印されています)使えるようです。
1年は525,600分だから、年間52万5600個のパスワードを毎分生成し続けるんですねえ。^^;;;

当然、銀行のシステム側でも同じパスワードを生成して、パスワードが一致しているかどうかを判断するわけですが......
これって、このパスワード生成機に内蔵の時計は、ずれないのかな……?(^_^;;;
その「ずれ」を見越して、有効期限が「数年後」に設定されているのかな。
有効期限が来ると、液晶には何も表示されなくなるんだそうです。(期限が来るよりも前に、次のワンタイムパスワード生成機を送ってくれるんだそうで。)

こういったハードウェアを無料で送ってくれるのは、なかなか太っ腹だと思うんですけども、1個あたり、いくらくらいのコストがかかっているんでしょうかね……? 不正利用の被害を防ぐのにかかるコストと比較して、採算が取れるからこそ無料になったんでしょうけども。

実際に、オンラインバンキングにログインして、ワンタイムパスワード生成機のシリアルNo.を登録してから再度ログインしてみたところ、たしかに「通常のログインステップ」の後に、ワンタイムパスワードの入力が求められました。
なかなかおもしろいです。

これを利用することだけで、「ものすごく安全になる」というわけではありませんが、それでも、手は増やしておいた方が良いよな、と思って申し込んだのでした。

5月……?

5月3月65日(土)になりました。まだ3月ッ!
右写真は、PC机の上で毎日めくっている、ハヤテの日めくりカレンダー。
5月です……。
2013年上半期分も、残りわずか2ヶ月分となってしまって、ずいぶん薄くなりました。
否が応でも月日の経過を感じざるを得ません。
うう……、早い……。

ガラケーフリーズ

先日、携帯電話での打ち合わせ中に、突然先方の声が聞こえにくくなって、やがて無反応になる現象に遭遇。
端末を耳から離して画面を見てみると、待ち受け画面に戻っており、しかも何か操作しようとしても反応しないフリーズ状態になっているという謎の現象です。
いやいや、これスマートフォンとかじゃなくてガラケーですよ……!?

電波の感度を示すマークが、通常の「緑色アンテナ+黒棒(最大3本)」じゃなくて、赤色で表示されていたり……。
圏外の場合は赤色の漢字で「圏外」と表示されるので、圏外表示とも異なります。初めて見ました。

とりあえず、強制的に電源を切ってから再起動したところ復活したので、電話での打ち合わせは再開できたんですけども。
一体何だったんだ……!?

スマイルスマイル

スマイルスマイルNHK総合で、大河ドラマの直前に放送されている大自然系番組「ダーウィンが来た」の現在のテーマ曲「スマイルスマイル」がわりと良いなあ……と思って、CDを買いました。
良いです良いです。

番組内で使われている、楽器を替えて曲だけが演奏されているインストゥルメンタル版も含まれていたら嬉しかったんですが、まあ、番組のサントラCDではなく、あくまでも個人歌手のCDなので、それは仕方ないですかね……。(^_^;;;

シュタインズ・ゲート Blu-ray BOX

Steins;Gate友人から強制的に貸し出されてきた「Steins;Gate(シュタインズ・ゲート)」のBlu-ray BOX。(笑)
TV放送分は全24話で、BOX特典として後日談の第25話があるらしい。
原作は、Xbox用ゲームなんですねえ。

劇場版「Steins;Gate 負荷領域のデジャヴ」で、TVシリーズへの興味は湧きました。^^;
TVシリーズが放送されていたのは、2011年4月~9月かあ……。

今のところ、うちのPCではBlu-rayは視聴できないので、見るのはずいぶん先になりそうですけども。(^_^;;;
「氷菓」第3巻に付いてた第11.5話もBlu-rayだけだったので、いい加減にPCにもBlu-rayドライブを内蔵させてもいいかな……と思ってはいます。

うちのメインディスプレイはHDMI接続なので、ディスプレイ面での問題はないはずです。なので、あとは、Blu-rayドライブと再生ソフトさえあれば視聴可能なんですが。ドライブは、もはやそれほど価格が高いわけでもないので、別にいつ買ってもいいんですが(^_^;)、データ用途で(DVDではなく)Blu-rayが必要になるような機会が全然無いので、あまり必要性を感じなかったので買わないまま今に至っています。(^_^;;;
レコーダーでの録画分だけでも消化しきれないほどありますから、映像Blu-rayを手に入れることもほとんどありませんし……。^^;;;

しかしまあ、せっかく貸してくれたので、手に入れようかな……。
PCの筐体を開けて接続するのもまた面倒なんですが(爆)、でもまあ、そろそろ筐体を開けて掃除しておいた方が良い気もしますからね……。^^;;;

カシオ製の常夜灯付き電波時計 IQ-1150NJ-7JF を買いました

CASIO製 常時点灯機能付き電波アナログ壁掛け時計 白木枠 IQ-1150NJ-7JF CASIO製の壁掛け電波時計を買いました。型番IQ-1150NJ-7JFという電波時計です。
この電波時計で特に気に入った機能が、

  • 夜間だけ常時点灯する明かり (=夜でも時刻を確認できる機能)
  • 夜間だけ秒針を停止する機能 (=秒針のコチコチ音がしなくなる機能)

の2点です。
この電波時計は、この機能がメインですよね。たぶん。^^;
もちろん、電波時計なので時刻は正確です。

夜間時刻の設定は2種類で、「夜22時~翌朝6時」か「夜0時~翌朝8時」のどちらかを指定できます。この間、「時計の下部2箇所に付けられた明かりが常時点灯して、秒針が停止」します。
これらの機能が良いなあ、と思ったので買いました。

寝ているときに、ふと一瞬目が覚めることがあるんですけども、そのときに時刻を確認したいと思うことがよくあります。でも、手元の明かりで枕元の時計の時刻を確認する……という動作を行うほどには覚醒しない(笑)ので、結局時刻は確認できないまま……ということがよくありました。(^_^;)

この電波時計だと、壁に掛けてある上に、夜間は常時点灯している明かりで時刻が判別できるので、「ああ、今XX時かあー」というのがすぐに分かります。
すごく便利です。

明るさは強弱の2種類を設定できます。(OFFにもできるので選択肢は3つですが。)
試しに「強」で2日間使ってみましたが、個人的には何の問題もありませんでした。時刻を確認するのに必要十分な感じです。ちょうど良いです。

明かりは、時計の下部2箇所にあるだけなんですが、時計の縁の内側に光を反射するような何らかの仕組みがあるのか、夜になると、縁全体が丸く淡く光るようになっています。なので、何時であっても時刻は十分確認できました。うまく作ってありますね……。^^;(※鏡のように反射するわけではないので、まぶしさを感じることはありません。)

電波の受信状況を、緑(受信済み)か赤(受信失敗)のランプが1分ごとに一瞬光ることで知らせる機能も付いているんですが、夜間に「明かりを常時点灯して秒針を停止させる機能」を使っている間は、自動でOFFになる配慮付きです。これも良い感じでした。暗い状況で赤や緑の光は目立ちそうですからね。

電波の受信状況は問題なく、電池を入れてから2分後くらいには、ぐるぐる分針が動き始めて、正しい時刻になりました。アナログ時計の針がぐるぐる自動で動くのはちょっと面白いですね。^^;;;

なかなか良い買い物でした。
定価は5,500円くらいでしたが、EDIONネットショップ価格で3,180円で買えました。
Amazonでは3,400円くらいの価格設定だったんですが、そのAmazon上に出品しているEDIONで3,180円で買えました。普通、Amazon以外の第三者企業の出品物だと送料が掛かりますが、たまたまEDIONでは(3,000円以上なら)送料無料だったので。

Amazonは、箱が無駄にでかいことで知られていますが、それに負けず劣らずEDIONもすごくでかい箱で届きました。^^;;; (下記写真参照)
まあ、どんな製品に対してもぴったりの大きさの段ボールを用意することなんて無理ですから、ある程度大きくなってしまうのは仕方がないとは思いますが。^^;;;

EDION箱 EDION箱から取り出したCASIO箱 CASIO箱の中の時計:IQ-1150NJ-7JF
EDIONの大箱の中に、CASIOの箱が入っていて、その中に、緩衝材にくるまれた電波時計本体が入っていました。^^;

ちなみに、この電波時計を動かすには、単三乾電池ではなくて単二乾電池が2個必要です。^^; 時計ってたいてい単三乾電池だと思っていたので驚きました。まあ、たしかに常夜灯機能があれば余計に電力が必要でしょうからね……。^^;
モニター用の電池が2個付いていたので、特に別途乾電池を用意することなくそのまま使えましたけども。
説明書に、わざわざ「乾電池の代金は価格に含まれていません」という注釈が書かれていたのは、付属の電池だとすぐに切れるからなんでしょうかね……?
中国製のPanasonicブランドの乾電池が付いていました。

CASIO (カシオ) 常時点灯機能付き 電波アナログ壁掛け時計 白木枠 IQ-1150NJ-7JF

ちなみに、同製品には、白木枠と濃茶木枠の2種類があります。部屋の壁紙が白色なので、私は淡い木目の「白木枠」の方を選択しましたが。濃茶木枠の方もそれはそれで良さそうでした。

ウェブ上でIDとパスワードによるユーザ認証を施す方法の解説記事をアップデート

基本認証でアクセス制限をかける方法All Aboutで公開していた記事『基本認証でアクセス制限をかける方法』のアップデート版を公開しました。ウェブサイト内の特定の箇所に対して、IDとパスワードを使ったユーザ認証(アクセス制限)を施す方法として、「基本認証(BASIC認証)」の使い方を解説しています。

この記事は、相当長く公開し続けていたもので、初版の執筆はなんと2002年9月12日。(^_^;) 10年以上も前の情報なので、今読むと、内容が若干古かったり読みにくかったりしていて気になっていたのでした。
今回のアップデートで、ほぼ全文をまるごと改稿し、多くの解説画像も作り直しました。ほとんど新規記事のようなものです。

IDとパスワードによるアクセス制限を施してみたい方々は、ぜひどうぞ。
会員制サイトを作ったり、テスト用のページをスタッフだけで共有する場合などに活用できます。

昨日の日記に書いた「基本認証(Basic認証)用の.htpasswdファイルに使える暗号化パスワード生成サービスを作った」というのは、実はこのアップデート版記事内で紹介するために作ったのでした。^^;
さすがに、不特定多数の読者に向けて、第三者が公開しているサービスを指して「ここを使えばいいよ」と気軽に紹介しちゃうのは、第三者のサーバリソースを消費するという点で(公開している方に申し訳ない気がして)気が引けたので……。(^_^;;;

2013年05月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  

他の月

--- 当サイト内を検索 ---