無料ブログ「rentafree.net」の管理人ブログ

アクセス解析ツールを廃止にします

当初より「試運転中」として正式サービス扱いにしておりませんでしたが、アクセス解析ツールを廃止にします。
当面の間は内部的には機能を残しておきますが、新規のツール作成ページヘのリンクを消しました。

アクセス解析ツールとは、当サービスのブログ等の機能として用意しているアクセス解析とは別の、外部サイト用のアクセス解析ツールです。
ブログ等の機能に変更はありません。

robots.txtへのリクエストに対してキャッシュを使うようにしました

robots.txtへのリクエストでエラーが発生し503が大量発生していることが判明したので、robots.txtの配信効率を上げるために、
robots.txtへのリクエストに対する応答時にLast-Modifiedを接続時刻で返し、100日以内の再接続時は304 Not Modifiedを返すように変更しました。

ただ、503が発生する前に1回だけ500が発生しているようで、その原因がApacheのモジュールレベルにある様で、
若干ログの出方が違うのですが、こちらの2014-12-30の記事に書いた件と症状が似て、
mod_aliasのバグが原因でmod_fcgidでエラーが発生しているような気がするので、mod_aliasの代わりにmod_rewriteを使うようにサーバー設定を変えてみました。

この記事を書いている間にエラーが発生していたのと同様と思われるリクエストが発生していたのですが、
正常に捌けているようなので、解決したと思います。

今後も問題が継続しているようなら、自動で監視と再起動をするようにして対応しようかと思います。


上記のmod_aliasバグは、ディストリビューター配信バージョンのApacheを使用しているのですが、
Apacheの公式ではこの件の修正がされているような記述を見たので、公式の最新バージョンでは存在しないのではないかと思います。
メモリエラーが発生した後にFastCGIのスロットがゾンビ化してmod_fcgidがエラーを吐く症状なのですが、
バグはmod_fcgidではなくmod_aliasに存在して、mod_aliasとmod_fcgidを併用すると問題が生じる気配。

先日の上部帯UIの件

先日の記事で、上部帯UI(メニューバー)を簡単に実現するような機能を公式Javascriptのタブ機能を拡張する形で追加する方向だと書きましたが、
タブ機能のコードに数行追加するだけでクリック(等)されるボタンの位置に応じてプルダウン(やプルアップ)メニューを表示することはできそうなのですが、
タブ機能ではボタンと表示する領域に枠線が有り境界が出来る場合に、ボタンのmarginに枠線幅分のマイナス値を設定することで枠線を重ねるという方法で、CSSレベルで境界を消すことが出来るのですが、
DOMで座標を取得してポップアップさせる場合、この方法だと領域が重ならないようで、境界線を消そうとするとコードが複雑になってしまいそうです。

タブ機能と共通化した上で汎用性の高い機能は提供できなそうで、
機能を実現するなら、枠線のサイズ等に応じて個別のコードを用意したほうが良いかなと思うので、
この件は実装しないことにします。

上部帯UI

たまに、上部に横並びのメニューが配置(Windows等のアプリケーションのメニューバー的な)されているようなUIを使用したサイトを見かけますが、
そのようなUIを簡単に実現させられるような機能を実装させようかなーと考えています。

最初、サイドバーを上部帯形式で表示するようなテンプレートを作ってみようかなーと考えたのですが、
当サービスののテンプレートにはタブUIを使用したテンプレートが有りますが、
タブUIは公式Javascriptの機能で実現した上で、それを使用した公式テンプレートを用意するという形で提供し、テンプレート以外でもタブUIが使える汎用性の高いものとなっています。
帯UIを提供する場合も、同じように公式Javascriptの機能で提供した方が良いかな・・・と。

で、上のようなことを考えていて更に気づいたのですが、
既存のタブUI機能を、座標移動できるように拡張すればタブ機能と共通化できそうな・・・

既存コードをちょっと拡張するだけでできそうなので、近日中に作る方向で。