2011-01-01から1年間の記事一覧

mailman: 別ホストへの移設(作業メモ)

意外に簡単。以下、CentOSでの実施手順: % sudo -s $ /etc/init.d/mailman stop $ cd /var/lib $ tar cf ~/mailman.tar mailmanドメインを切り替える。新ホストにログインして、 % scp oldhost:~/mailman.tar . % sudo -s $ /etc/init.d/mailman stop $ cd …

JavaScript: Chrome で window.scrollBy が効かない場合の解決方法

http://example.com/foo#bar みたいなページがロードされたら、#bar の位置までスクロールされますが、10ピクセルだけスクロールを戻したいとします。Firefoxでは、次のコードでOK。 $(document).ready(function () { window.scrollBy(0, -10); });しかし、C…

Rails: 宛先不明で戻ってくるメールを処理する

ActionMailer でユーザーにメールを送って、「宛先不明」等で戻ってきた時には、ユーザーのアカウントを無効にする処理をする方法のメモ。まず、こんな風に書きます。 class MyMailer default :from => 'info@example.com', :return_path => 'error@example.…

Ubuntu 11.10 amd 64にATOK X3をインストール

Ubuntu 11.10 amd 64にATOK X3をインストール基本的には http://d.hatena.ne.jp/madosuki/20111017/1318831271 の通りです。自分と同僚のためにちょっと整理しておきます。まず、ATOKのCD-ROMをPCに挿入してから、以下のコマンドを順に実行: export LANG=C s…

Capistrano: 環境変数の設定 (メモ)

今日、Capistrano で Rails 3.1 ベースの Web アプリをリモートにデプロイする準備をしていた時のこと。deploy:restart の後に delayed_job のプロセスを再起動したかったので、 require "delayed/recipes"...after "deploy:restart", "delayed_job:restart"…

warning: regexp match /.../n against to UTF-8 string

Ruby 1.9.2 環境で spec を実行した時に、 warning: regexp match /.../n against to UTF-8 stringという警告がたくさん出て困った。ここに書いてある通り、Gemfile に gem 'escape_utils'と書き、config/initializers/escape_utils.rb を作って、 module Ra…

IE7のz-indexに関するバグ: 親エレメントに大きな値を設定で解決

2011年8月(!)にもなってIE7のz-indexに関するバグに初めて遭遇していました。当然、Googleで検索すれば大量のブログ記事が出てきます。jQueryですべてのdiv要素にz-indexを設定するという力業が検索上位に出てくるけれど、これはちょっと、という感じもしま…

mysql, ubuntu: mysql_install_db が失敗する(解決)

Ubuntu Server 10.04 LTS に apt-get で MySQL 5.1 をインストールし、mysqld_multi で複数のインスタンスを動かそうとしました。第2の mysqld は 3307 番ポートを使用し、データディレクトリは /opt/var/lib/mysql とします。最初に行うことはシステムデー…

最新版の nginx を ubuntu 10.4 に apt-get でインストール

nginx を初期状態の ubuntu 10.4 に apt-get でインストールしようとすると、古いバージョン 0.7.5 が入ってしまいます。以下の手順で最新版をインストールできます。 % su - $ apt-get install python-software-properties $ nginx=stable $ add-apt-reposi…

Linux: プログラムごとのメモリ使用量を調べる

2007年の投稿ですが、あるサイトにHow much RAM is used per programという記事があって、プロセス単位ではなくプログラム単位でメモリ使用量を調べてくれるスクリプトが紹介されていました。使い方:このページにあるPythonのコードをps_mem.py というファ…

psql: FATAL: Ident authentication failed for user "foo" (自分用メモ)

普段MySQLしか使わないので、急にPostgreSQLの仕事が来て、少し慌ててしまいました。MySQLと異なりPostgreSQLのデフォルトでは、OSのユーザー名とデータベースのユーザー名が一致しないとpsqlでログインできません。例えば、OSのユーザー名がkurodaで、ユー…

no such file to load -- mongrel_rails

ちょっと古いRailsアプリケーションを移設する仕事を請け負いました。Rails のバージョンは2.0.2で、mongrelで動かしています。これを別のサーバに引っ越しをしたい、というのが顧客の希望です。ゆくゆくはRails 2.3経由でRails 3.xにアップグレードしたいと…

Rails + jpmobile: undefined method `on_load' for ActiveSupport:Module

Rails 2.3.11とjpmobile 0.1.6の組み合わせだと、 undefined method `on_load' for ActiveSupport:Moduleというエラーが出て動きません。ちょっと古いけどjpmobile 0.0.8ならOK。

Rails: auto_link メソッドはバージョン 3.1 で廃止

2011年5月2日のコミットで、auto_linkメソッドがRailsから除かれました。Rails 3.1から標準では使えなくなります。引き続き使いたい人は、rails_autolink gemを使ってください。廃止の理由は「May not be safe!」だそうです。

Rails + mem_cache_store: can't clone Fixnum

Rails のバージョンを 2.3.5 から 2.3.11 に上げたら、 Status: 500 Internal Server Error can't clone Fixnum .../rack-1.1.2/lib/rack/utils.rb:177:in `clone' .../rack-1.1.2/lib/rack/utils.rb:177:in `set_cookie_header!'というエラーが出るようにな…

Capistrano: sftp でファイルを put しようとすると undefined method エラー

今日、同僚から「突然、XXXに対してCapistranoでファイルをアップロードできなくなった」という相談が来ました。XXXというのは、半年ぐらい運用しているRails製のWebサイトです。私が試してみると、確かにエラーが出ています。 sftp upload # -> /var/rails/…

ubuntu: USBメモリを認識しない → 手動マウントで解決

mount -t vfat /dev/sdd1 /media/kindle -o uid=1000,gid=100,utf8,dmask=027,fmask=137 最近、USBメモリを認識しないな、と思っていました。何か壊れたのかなと思い、3.5インチベイ内蔵タイプのUSBハブを購入して付けてみました。しかし、認識しません。一…

rkhunter: No hash value found for file...

rkhunter は、コンピュータシステムへの侵入ツールルートキットを検出するプログラムです。さて、rkhunter を実行すると次のような警告がログに記録されることがあります。 No hash value found for file '/usr/bin/top' in the rkhunter.dat file.これにつ…

Bundler 1.0.11 は Rails 2.3.11 と相性が悪いかも

Bundler を 1.0.10 から 1.0.11 に上げたら、Rails 2.3.11 ベースのWebアプリが動かなくなりました。エラーメッセージはこちら: /usr/local/lib/ruby/site_ruby/1.8/rubygems/source_index.rb:320: in `refresh!': source index not created from disk (Run…

passenger: No such file to load -- application

Passenger で Rails アプリケーションを動かそうとしたら、「No such file to load -- application」というエラーが出て正常に起動しないという問題に遭遇しました。Google で検索したら、Passenger の作者 Hongli Lai 氏がGoogle Groupsでコメントしていま…

Rails: CakePHP と同居させる(メモ)

いま、CakePHP で構築された Web サイトがあり、同じドメインのサブ URI に Rails アプリケーションを同居させたいとします。仮に、そのドメインを example.jp とし、サブ URI を /forum とします。つまり、http://example.jp/foo/bar などにアクセスがあれ…

Rails: link_to の :popup オプションは Rails 3 で廃止予定(DEPRECATED)

廃止予定となっていますが、現実にはもう使えません。回避策は以下の通り: :popup => true を 'data-popup' => true に書き換える。 public/javascripts/application.js に次のコードを追加する。 (prototypeの場合) document.on("click", "a[data-popup='tr…

Rails: syntax error on line 22, col 11

rake db:migrate がエラーで止まると同僚が叫んでいるので、助けに行くと、確かに syntax error on line 22, col 11というエラーメッセージを出して止まっていました。しかし、メッセージを調べても原因が分かりません。そこで、ほとんど期待しないままGoogl…

Rails: PostgreSQLでテストする時の NOTICE を抑制するには

初めて Rails + PostgreSQL の組み合わせで開発をしています。私が PostgreSQL を最後に使ったのは、Perl/PHP を使っていた数年前のことで、もういろいろ忘れてしまったけど、だんだん慣れてきました。さて、ひとつ TIP を見つけたので、メモしておきます。U…

ブログ記事紹介: 動的型付け vs 静的型付け

Matz氏のつぶやきで次の記事を知りました: The next “secret weapon” in programming Lisp, C++, Java, Pytho, Ruby, Closure, Haskel, OCaml など様々なプログラミング言語に言及しつつ、動的型付け言語と静的型付け言語の優劣を論じ、最終的には「強い静的…

Rails: Mac OS では mecab を MacPorts で入れること

お客様の Mac に Rails の開発環境をセットアップすることになりました。普段は Ubuntu しか使っていないので、四苦八苦。いろいろと調べて分かったのは、MacPorts の整備がかなり進んでいて、これを通じてほとんど何でも入手できるということ。全部コンパイ…