$ curl -x http://proxy.com:8080 http://example.com

port指定しないとデフォルトでは1080番にアクセスしに行く。知らないとハマって死ぬ。

おまけ

SSLの証明書とパスワード付きでアクセスする。cert.pemはprivate keyとclient certをconcatinateしたもの!これを知らない者は死ぬ!

$ curl -x http://proxy.com:8080 -E cert.pem:password http://example.com

Railsアプリで画像添付メール経由で画像を受け取りたい。(ガラケーとか)

/etc/aliases:

foo: "| cat $1 > /tmp/foo"

これだとファイルのownerがnobodyとかになっちゃうので.forwardを使う。

/home/unk/.forward:

"| cat $1 > /tmp/foo"

Railsでメールを受け取る

Railsでメールを受け取りたい。railsをCLIから呼び出すにはrails runnerを使う。しかし、railsコマンドはRAILS_ROOT外ではrails new用の動きをするので困る。

しかし、その為にあるのかも知れないscript/railsを使えばOK。

rvm経由で呼び出すと相当長くなる。

"| BUNDLE_GEMFILE=/var/www/foo/current/Gemfile /home/unk/.rvm/bin/rvm ruby-1.9.2p290@foo exec bundle exec /var/www/foo/current/script/rails runner 'PictureMailer.receive(STDIN.read)' -e production"

しかしまだ画像ファイルが600で作成されるという問題が残る。下記の様にchmodするようにしてもいいけど、umaskを変更する方がいいかも。

mod_passenger利用時の注意点 - komagata

"| umask 0022; BUNDLE_GEMFILE=/var/www/foo/current/Gemfile /home/unk/.rvm/bin/rvm ruby-1.9.2p290@foo exec bundle exec /var/www/foo/current/script/rails runner 'PictureMailer.receive(STDIN.read)' -e production"

umaskは子プロセスに引き継がれるのでPaperclip経由で出来るファイルもこれで644になる。

Title is all. (via @milk1000cc)

Webサーバーを立ち上げつつブラウザを開く簡単な方法は無いだろうか?

要はRailsで言えばこんな感じのことがやりたい。

#!/bin/sh
rails s
open http://localhost:3000/

Webサーバーは立ち上がりっぱなしなのでopenは走らない。バックグラウンドにしてもWebサーバーの起動には多少(1秒ぐらい)時間が掛かるのでopenもちょっとした待ち合わせをしなくちゃいけない。

(゚Д゚ )アラヤダ!!っていう簡単な解決方法がある気がするんだけど思いつかない・・・。