2009-07-01から1ヶ月間の記事一覧
はてなダイヤリーから livedoor Blog への移行に際して、エクスポートしたデータの本文を抽出する方法を確認した。 開始記号 ^*[^\*] 終了記号 ^*[^\*] または ^<\/body>
はてなダイヤリーからの移行先を livedoor Blog に決めた矢先に問題が見つかった。 livedoor Blog ではブログ内検索でキーワードがマッチしてくれない場合がある。 例 ページタイトル: 検索文字列に日本語を指定した場合に検索が成功するかテスト。 キーワー…
Subversion リポジトリをプライベート公開するなら https が最良の方法となる。 方法はいくつかある。 svn で公開。 svn+ssh で公開。 http で公開。 https で公開。 業務で使う場合は暗号化が必要になる場合も多いので svn+ssh か https が候補となる。 svn…
環境 CentOS 5.2 Subversion 1.4.2 問題 CentOS で Subversion のリポジトリを SSL 公開したい。 解決方法 以下の手順で作業を進める。 Apache mod_authz_svn のインストール Apache mod_dav_svn のインストール Subversion リポジトリ ユーザーの作成 Subve…
js では 1 行に 1 文しか無い場合、セミコロンを省略できる。 つまり以下の 2 つは同じになる。 var a = 1; print(a); var a = 1 print(a)
Google Documents では文書を作成したユーザーは、文書に対して「オーナー権限」を持つ。 サブアカで作成した文書はオーナー権限をメイン アカウントへ委譲したくなる場合がある。 ところが、スプレッドシートでは権限の委譲が出来ない。 文書やプレゼン文書…
前は Controller::redirect() には、ハッシュで引数を渡してたんだけど、'/controller/action' と文字列で渡す方が簡単だと分かった。 モデルとして扱う場合はハッシュの方が便利だけど、モデルじゃないなら文字列で直接書いちゃった方が簡単。 ルーティング…
以下の方法はオススメしない。 サーバ ローカルで操作する分には問題ないが、リモートで操作しようとするとパスワードの入力が頻発するので使い勝手がよくない。 WebDAV 環境を構築した方がいいかも。 環境 CentOS 5.2 Subversion 1.4.2-2.el5 問題 CentOS …
Google Bookmarks にブクマしたはずのページが探せなくて困った。 どうも Google Bookmarks について誤解していたみたいだ。 誤: クエリーに対してページ内容は検索する。 正: クエリーに対してページ内容は検索しない。 だから、使う時も単にブクマするので…
エンコーディングに Shift_JIS を使った場合の全角のバイト数と、改行コードのバイト数について調べてみた。 環境 全角の文字数 改行の文字数 windows firefox 全角1文字 改行2文字 docomo 全角2文字 改行2文字 au 全角1文字 改行1文字 softbank 全角1文字 …
技術系の話はバージョンが違うと役に立たないことがある。 逆にバージョンが明記されていれば「内容が違うのはバージョンが違うからかも」と予想できる。 だから技術系メモにはバージョンを書こう。
環境 Windows XP SP3 Aptana Studio 1.5 ダウンロード 今回は以下から Standalone の zip をダウンロードした。 http://www.aptana.com/studio/download インストール zip なので展開して適当な場所に置くだけ。 初回起動 Firefox のデバッグ環境がないとか…
環境 PHP 5.2.9-2 (cli) 問題 クライアントによって改行コードが異なるので、サーバ側で統一する必要がある。 解決方法 PHP 標準の str_replace では $_POST のような連想配列を変換できないので、str_replace() を再帰するようにしてやる必要がある。
環境 CakePHP 1.2.3 8166 問題 html select タグに使うデータを生成したい。 解決方法 cake 1.1 以前は generateList() を使ったけど、1.2 以降は find() で直接取得する。 Category->find('list'); ?> ここで項目名として取得されるフィールドは、'fields' …
環境 CakePHP 1.2.3 8166 複数レコードを編集する際の注意点 フィールド名の注意 Model::find() の注意 バリデーションの注意 フィールド名の注意 フィールド名は以下のように定義してはならない。 text($i . '.Product.name'); } ?> 以下のように定義しなく…
環境 Apache 2.x 問題 文字化けするのが直せない。 HTML ヘッダの charset とファイルのエンコーディングは一致しているのに文字化けする。 解決方法 エンコーディングの指定ができるポイントをおさらいする。 HTML ファイル内容のエンコーディング指定 HTML…
CORESERVER 管理画面を表示する。 アクセスログ閲覧をクリックする。 該当するサイトの「本日分の生ログを取得」をクリックする。 5分ほど待つ。 $HOME/log にあるアクセスログを見る。
以下を読んで気になったので、仮想 PC ソフトの VirtualBox を入れてみた。 http://techtarget.itmedia.co.jp/tt/news/0907/10/news01.html 最初の印象は VMware より軽い感じ。 でも、プロセスの優先度も違うようで VirtualBox をバックグラウンドで動かし…
Google Bookmaarks のいい所: 軽い。 再ブックマークした時に履歴の直近位置にエントリが移動する。 検索でページ内容まで検索してくれる。 ひらがな、カタカナが違っていても検索でヒットする。 はてなブックマークや delicious を使ってたときは、エントリ…
自分が手放せないウェブサービスを列挙してみる。 Google Gmail Google Bookmarks Livedoor Reader 逆に手放したいサービス はてなダイヤリー はてなダイヤリーを手放せない理由 エントリが簡単に書き始められる。 コードが書きやすい。
環境 CakePHP 1.2.3.8166 問題 Model::validates() で引数で渡したデータをバリデートしない。 解決方法 CakePHP 1.1 以前の場合、validates($this->data) でバリデーションできた。 1.2 以降は Model::set() でデータを予め設定しておく必要がある。 Model-…
環境 CakePHP 1.2.3.8166 問題 バリデーション エラーで自分自身の画面を再表示する際、非入力項目の内容の扱いが面倒。 以下、初期表示時のデータ取得処理。 Product->find('all'); $this->data = $products; ?> 初期表示後、ユーザーがフォームを POST す…
コバヤシさんの生放送で何度もサーバから蹴られたので、プレミアム会員になってみた。 使ってみた最初の印象。 生放送の会場へスムーズに入れる。 画質が綺麗。 エコノミーにならないのはかなり大きい。
ブラウザのホームページを変更してみた。 旧: http://www.google.com/advanced_search?safe=off&num=30 新: http://www.google.com/bookmarks/Google Bookmarks にすぐにアクセスできるようになった。 2009/07/29 追記 上記設定を元に戻した。 まだ見たこと…
問題 CakePHP find で SQL の MAX() や MIN() を使いたい。 解決方法 fields に直接記述することで使える。 group を使って、GROUP BY を発行させることを忘れないように注意。 array(...), 'group' => array('MAXで参照するフィールド名'), 'fields' => 'M…
全てのエントリを一度に削除することはできないみたい。 以下の方法で10件ずつ削除できる。 右上の Bulk edit をクリック。 エントリ一覧の上側にある Select All をクリック。 Delete をクリック。 OK をクリック。
直接移行はできません。 はてブ→delicious→Google Bookmarks という流れになります。 delicious を空にしておく。 気持ち悪いので delicious のエントリを空にしておきます。 1件ずつ削除するのは面倒なので、別エントリで少しだけ楽に削除できる方法を書き…
ポップアップ javascript:var u=encodeURI(location.href);var ti=encodeURIComponent(document.title);var te=encodeURIComponent((window.getSelection&&window.getSelection())||(document.getSelection&&document.getSelection())||(document.selection …
/etc/httpd/conf/httpd.conf を編集する。 <Directory /home/*/public_html> : SSLRequireSSL </Directory>
sudo vi /etc/hosts sudo vi /etc/sysconfig/network sudo service network restart