web小ネタ:コピー禁止など

2013/3/20 [10:09:04] (水) 天気

kindleやibooksの新刊・既刊情報を掲載、表紙画像をそれなりの大きさで表示しようと思った時に、まんまimgタグで表示させるのはちょっと無造作すぎるなあ、と。自分で描いたイラストならともかく、お願いしたりいただいたりしたイラストだ。


そこで「画像コピー禁止」を検索して見つけた下記の方法で細工。


・画像の上で右クリック禁止伝統技

「onContextMenu="return false"」


・画像を簡単にドラッグ&ドロップできないように。

 表示する画像はcssで背景に指定して、表側のimgタグには透過gifを表示。


HTML
<img src="space.gif" width="640" height="480" alt="表紙画像"
style="background-image:url(http://hyoushi.jpg);" class="image"
 />

CSS
.image{
  background-repeat:no-repeat;
  background-position:center center;
}

この方法を見つけたときは、よく思いつくなあ、なるほどなぁと呆れつつ感心。webなんて表示しているものはどうやったって取得されちゃうんでこの方法もその場しのぎ(例えばhttpでソースを取得しちゃえば画像ファイルのありかはわかる)


また、コピーされたくないテキストは以前に書いた「個人情報をちょっと防衛」のように。

・コンテキストメニューで右クリックは禁止

・ajaxを使って呼び出されるスクリプトでリファラなどをチェックして表示するorしないを制御

・表示してもjQueryで 「.bind("copy", function () { return false})」コピー禁止

にしておく。

マウスの右クリックもできず、キーボードショートカットでのコピーもできない状態になる。

右クリックできるように、とJavascriptを切ると当然ながらAjaxが効かないので、表示すらしない。


WEBは性善説を根拠にフリーであるべき(お金・対価がタダという意味ではない)と思うんだけど、残念ながらなかなかそうもいかないようで、ちょっとだけ。


ついでに。


ここんとこ雑記帖が重い=表示が遅いのでイラっとしていた。ここで何度も言うけど「WEBは早さが唯一の絶対正義」そんな状態なのに、各記事にカテゴリをつけるため、データベースにカテゴリ用テーブル、カテゴリと記事のリレーション用テーブルを追加。そりゃまた当然遅くなる。


SQLを改めて見てみたらば、indexをつけてたと思ってたテーブルの(いろんなSQL文の where句で最もよく使う)カラムにindexがついてないのに気づいて慌ててつけた。

結果、それまで体感で表示まで5〜7秒かかっていたのが3〜5秒に短縮された。

それでも遅いんだけど。これ以上の短縮はキャッシュで中間コードを保存するとか、静的ページを生成するとかになる。スクリプトの書き換えや運用も含めて考えなきゃいけないかな。

もしくはajaxのコンテナだらけにする…って、ajaxにすると検索エンジンが拾えないので却下だ。


サイトの細工やチューニングは、考え出すと・やりだすと面白いもんです。


[03/20 18:27:21] 追記。ということで、一部のパーツ単位で生成しておいて、DBからデータを取るのではなく、静的パーツを呼び出すだけにした。ほんの少し早くなった、ような気がする。



[2013/12/30 09:54:31] 追記。

直リンク禁止の定番も。

.htaccessで制御する(Apache)


SetEnvIf Referer "^http//example.com" is_ok
order deny,allow
deny from all
allow from env=is_ok

.htaccess を置いたディレクトリ以下に適用される

・リファラをチェックして、自サイトからのアクセスなら 「is_ok」を設定。

・この指定の優先順位は、1)拒否 2)許可。

・すべてのアクセスを拒否する

・is_ok が環境変数に設定されていれば許可する



[2014/01/13 12:38:03]追記。

.htaccess でキャッシュコントロール


<FilesMatch ".(css|js|png|jpe?g|gif)$">
Header set Cache-Control "max-age=604800"
</FilesMatch>
<FilesMatch ".(pl|cgi|php)$">
Header unset Cache-Control
</FilesMatch>

・cssやJavascript、画像などは1週間キャッシュする

・perlやphpはキャッシュしない


続・ハイパフォーマンスWebサイト ―ウェブ高速化のベストプラクティス

『続・ハイパフォーマンスWebサイト ―ウェブ高速化のベストプラクティス』

スティ-ブ・サウダ-ズ

[更新]2026-02-02 07:48:15

東日本巨大地震

2011/3/20 [21:04:49] (日) 天気

かなりびっくりした。


被災されたかたには、本当に、こころからお見舞い申し上げます。まだまだ大変でしょうし、わたし自身なにができるわけでもないですが、できる範囲で応援したいと思います。


阪神淡路大震災のときも驚いた。でも、テレビで四角く切り取られた映像でしか見ることがなく、実感もできなかった。それはアメリカの911も同じ。映画を観てるような。

おのれの想像力の貧弱さを露呈したようなもんで、今回は実際にかなり揺れて、電車も止まりウチまで二十キロ超を歩いて帰って、足の痛みがそのまま実感となって直撃。

被災地の過酷な状況をテレビなどでみるにつけ、一度助かった以上は二度死ぬなんてありえないので、これからが本当に踏ん張りどころなのかな、と。1mmにもならないけど、iTunes経由赤十字で募金してみたり、ちょっと考えさせられる震災だ。


[03/20 22:10:37]

原発はどうやらひと段落した、のかな。


[更新]2026-02-03 09:13:07

スクロールバーでセンタリングがズレる

2009/3/20 [10:05:40] (金) 天気

~butch/zakki/ 以下は同じフレーム同じ雛形なのに、FireFoxで見てると、ページによってはセンタリングがずれてページがピコっと動くことがあって、気持ち悪かった。cssを疑ってピクセル指定しなおしたりしても変わらず。

ググれ、カス。

だった。検索したらあっさり見つかった。


FireFoxなど、タテスクロールが起こる場合にだけスクロールバーが現れるので、スクロールバーの幅の分横幅が変わって、センタリングのやり直しになるから、ズレる。なので、最初からどのページもスクロールバーが出てればいい、らしい。定番は以下。

html {} に、height:100% margin-bottom:1pxを指定して常にスクロールバーを出させる。


いろいろあるもんだ。


[更新]2026-02-04 09:25:03

今度は風邪ですかい。

2006/3/20 [21:33:25] (月) 天気

あれ?なんか歯痛が終わったと思ったら風邪くさいぞ。…なんでやねん。昨日、今日と風がやたら強くて乾燥してるからやられたのか。


vertical-align:bottom

テーブルにピッチリとイメージを配置したいのに、どうしてもイメージの下に数ピクセルの隙間。さんざん悩んでたんだけど、この指定をすればOKだったのか。

って、今さらなにを。

[22:41:33]

もひとつメモ。

下にも書いたソフトウエアデザインのpostgresqlの特集記事を読んで…。

postgresql の initdb で --no-locale なんてつけた覚えがないので、やり直し、と思ったのがハマリのもとだった。


pg_dump -U ユーザー名 -E euc-jp > db.dump

とやって普通にダンプしたつもりが


pg_restore -d db db.dump

とやったら復元できずにあせる。


PostgreSQLのユーザー権限で、

cat pgsql.dump | psql ユーザー名


とやったらどうにかうまく…いったのかな。


コンサル屋からあがってきた設計図を元にデザインとガシガシHTMLコーディング。なんだかんだ文句はあるものの、もともとなんも考えずに思いつきだけでできたサイトばかりなのと違って、まずは論理構造があって目的別に整理されていて、という作りの指示があるのは面白い。見出しタグやstrongタグを使ってCSSをかぶせて、と。シンプルなテキスト中心なのもいい感じだ。あとはこのような見た目シンプルなものを、お気に召すかどうか、だけやな。フラッシュで動かしたり画像をてんこ盛りすればそれでウケるのはわかってんだけど。それとは対極だからなぁ。


立ち読みで済ませてた「ソフトウエアデザイン」をつい購入。データベースの設計とか、ちょうど今考えてるところの回答がズバリ。狙い撃ちもいいとこだったのだ。道を歩いて、路地の占い師に、あなたの悩みはこれでしょ、といきなり指摘されてついつい金を払ってしまったようなもの、か。

…たかだか数ページに970円は高かったなぁ。


実践PostgreSQL

『実践PostgreSQL』

ジョン・ウォスレイ

[更新]2026-02-04 10:35:32

DVDレコーダーが欲しいかも

2004/3/20 [16:57:15] (土) 天気

ゆうべは、小金井やるき茶屋でしこたま飲んだ。日本酒を飲むようになってから、酒に対してますますいやしく&だらしなくなってるような気がする。


で、今日は。

いきなりまたなんでみぞれまじりの雨なんだ。せっかくの週末なのに、指先がかじかむ寒さで行動半径が一気に小さくなり、とりあえずの吉祥寺。

テオ・アンゲロプロスDVDBOX第1巻の発売日。パルコB1のHMVで発見したけど、欲しいのは「旅芸人の記録」。ほかのカップリング2作品は見たいとも思わないし15000円弱の値段に給料前のサラリーマンは腰が引けた。

で、つらつら思うに。

「旅芸人の記録」をはじめ、LDで持ってるものをDVDに置き換えたいというだけなので、50枚以上あるLD分のDVDをいちいち買ってたんじゃ高い。中にはDVDになってないものもある。それなら、もしかしてDVDレコーダーを買って、自分でダビングしたほうが結果安くつきそうだ。

と思ってキムラヤを冷やかしたら、DVDレコーダーが6万弱で売ってた。明らかに自分でダビングした方が安い。どっかで金を捻出して買ってしまおう。


[03/21 00:42:18]

63.4キロ。19.3%

飲みすぎが祟ったか…。

[更新]2026-02-04 13:14:38

<<2026/03>>
       
1234567
891011121314
15161718192021
22232425262728
293031

【最近の10件】

日常読書映画アニメゲーム健康料理グルメカメラ写真ネタ仕事パソコンインターネットperlEPUB3電子書籍ActivityPub
検索: