すばらしく助かったのでメモ。
 
ウェブページ全体及びそのオブジェクトの分析
ファイルごとにダウンロード時間を計測してくれます。
 
あと、aguse.jp にもお世話になってます。
サイト全体の管理情報の表示や、aguse gatewayで迂回アクセスができるので、外からアクセスするとどのくらいのレスポンスかなど、いろいろと助かってます。
 
HTTP Status Code
なんかあったときはここ。HTTPのステータスコード一覧です。
 
ログファイルの分割ツールについて。これはどこかに書いておきたかったので。

CSSで透明化するのって、どうするんだっけっていつも迷ってしまうので、メモ。
ここに書いてある通り。
[CSS]IE8にも対応したクロスブラウザ用の不透明度の指定方法
正直そろそろ、これ「opacity: .75;」だけでいってほしい気はする。
 
透明化だけではなんなんで、『236:HTMLをエスケープする/エスケープをはずす』も。
半角の&は割とそのまま使えることが多いのでそのままにしてるけど、ちゃんと&にしとけよという話。

[Linux] プロセスIDを調べてみる
ps aux とか ps -ef 、 pgrep なんかは普段使っていなかったので、勉強になった。
 
Apache で mod_cache を使う

# a2enmod cache
# a2enmod disk_cache

# e /etc/apache2/mods-available/disk_cache.conf
CacheEnable disk /

これでOK。
WordPress Muで問題が発生したので組込み中止!
 
ubuntu(Debian系Linux)のApache2.2の設定管理
有効化したモジュールは、/etc/apache2/mods-enabledにファイルが作成される、ということが知りたかった。

必要に迫られてmod_evasiveをインストールしたのでメモ。Ubuntu9.04でのことです。
そのものずばりの記事がこちら ⇒ How to mod_evasive Ubuntu 9.04

sudo apt-get install libapache2-mod-evasive

こうするだけでいいよ(That is all there is to it.)と。
ほんとかなぁ?
ほんとに動いているかどうか心配だって?(How to test that it works ?)
じゃあ、F5連打してみなよ、すぐわかるから。(Simply open any browser, got to your server’s home page, and click the reload button as fast as you can.)
 
で、やってみました。
1秒間に2、3回程度なら全然拒否られません。
ガーっと連打というか押し続けると、こんな画面が。

Forbidden

You don't have permission to access / on this server.

みごとです。しばらくは間をおいてもこの画面でした。ちなみにサーバ側は 403を返しています。
 
Ubuntuではこれだけですが、ソースから入れたりしての詳しい設定方法などは、以下を参照。
Apache DoS攻撃対策 mod_evasiveインストール&設定 – Linux

ちょっといろいろあって「お断り」したいアクセス元があったので、しばらくIPアドレスで拒否っと。
まず、どこから来てるか、それを調べる。

# lsof -i:80

COMMAND   PID     USER   FD   TYPE   DEVICE SIZE NODE NAME
apache2 23768 www-data   17u  IPv6 54246506       TCP ubuntu904A:www->i125-201-8-158.s05.a023.ap.plala.or.jp:53982 (ESTABLISHED)
apache2 23770 www-data    5u  IPv6 54100032       TCP *:www (LISTEN)
apache2 23770 www-data   17u  IPv6 54246505       TCP ubuntu904A:www->i125-201-8-158.s05.a023.ap.plala.or.jp:40936 (ESTABLISHED)
apache2 23778 www-data    5u  IPv6 54100032       TCP *:www (LISTEN)
apache2 23778 www-data   17u  IPv6 54246518       TCP ubuntu904A:www->i125-201-8-158.s05.a023.ap.plala.or.jp:38658 (ESTABLISHED)
apache2 23780 www-data    5u  IPv6 54100032       TCP *:www (LISTEN)
apache2 23780 www-data   17u  IPv6 54247178       TCP ubuntu904A:www->spider79.yandex.ru:54332 (ESTABLISHED)
apache2 23794 www-data    5u  IPv6 54100032       TCP *:www (LISTEN)
apache2 24506 www-data    5u  IPv6 54100032       TCP *:www (LISTEN)
apache2 24506 www-data   17u  IPv6 54246543       TCP ubuntu904A:www->i125-201-8-158.s05.a023.ap.plala.or.jp:41587 (ESTABLISHED)

ま、こんな感じのレポートが出てくるわけです。(この例は、aguse.jpを動かしたときのもので、aguse.jpを拒否りたいわけではないので。念のため)
 
この例で言うと「i125-201-8-158.s05.a023.ap.plala.or.jp」を拒否りたいので、これをIPアドレスをなんでもいいんですけど、調べる。

# dig i125-201-8-158.s05.a023.ap.plala.or.jp

;; ANSWER SECTION:
i125-201-8-158.s05.a023.ap.plala.or.jp. 3600 IN A 125.201.8.158

 
で、「125.201.8.158」をしばらく拒否ろうかなと。

# iptables -I INPUT -s 125.201.8.158 -j DROP

 
iptablesの状態を見てみると、

# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
DROP       all  --  i125-201-8-158.s05.a023.ap.plala.or.jp  anywhere

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

 
戻すときは、

# iptables -D INPUT 1

指定している数字は、iptables -Lで出てくる順番です。いまは1つしかないから1。
 
このやり方(プロバイダのIP制限)をすると、巻き添えを食ってアクセスできない人がたくさん出ると思うので、緊急事態だけね。
 
参考:
iptables で特定IPからのアクセスを拒否
第9回 IP認証によるアクセス制限のテクニック

how-to-order_1

お客様からレイアウトが崩れるというクレームがあって、IE7、IE8、Firefox、Chromeで調べてみたんだけど、こっちでは全然再現せず。
打合せのついでに訪問して確認してみたら、確かにずれてる。

how-to-order_2

でも、なんか字が大きくて変だ。
IE8の設定(ツール ≫ インターネットオプション ≫ ユーザー補助)を確認したら『Webページで指定されたフォントサイズを使用しない』になってた。orz…
でも、お客様がわざわざこれを設定してるということは、一般的なWebサイトの字が小さくて見ずらいということだろうから、うちのサイトを見るときだけ設定変えてくれというわけにもいかず。


if (jQuery("#notice a").attr("offsetHeight") > 15) {
  jQuery("#notice").css("left", "670px");
}

苦肉の策でこうしました。
#noticeブロックは position absoluteで配置してあるので、#notice aの文字の高さがCSSで設定した高さ(ling-height:14px)を超えているようなら、もう少し左から書くようにすると。
こうやっても、表示の文字サイズを大とか最大とかにされると同じようになるんですけど、それは自分で調整可能なので。
(あと、ちゃんとやるなら、offsetHeightの値から文字サイズを判定して、leftを変えればいいんですけど、とりあえずはこれでOK)