2009年3月30日月曜日

Debian メール 設定

Exim4

外部にメールを送れるようにする―Exim4の設定

VM上のローカルなサーバなので適当に設定しました。本環境ではちゃんと調べて設定しないと...。

PHPでもSendメールでもEximでも外部にメールを送れないなーと思ってたら、設定してないだけだったw デビちゃんってツンデレね。

2009年3月29日日曜日

ApacheでMerbを動かす

Phusion Passengerが素晴らしい

Passengerといえば、RailsをApacheで動かせる元々mod_railsという名前のものです。Passenger2からはmerbも動くらしい!というわけで実験。この直前の記事は気まぐれでPassengerのアップデート(2.0.2から2.1.2へ)に失敗した時の解決方法です(笑

config.ruをmerbアプリのルートに置く

Deploying with Passengerに書いてある通りにすればいいだけですw Passenger2をインストールして、config.ruを用意すれば動きました。logディレクトリがないというエラーが出たけど、mkdirしただけですんなりOK!

Passenger2.1.2 CentOS5 インストール エラー

Error log(エラーログ):

### In ext/apache2:
g++ -shared SystemTime.o Utils.o Bucket.o Logging.o Configuration.o CachedFileStat.o Hooks.o mod_passenger.o -fPIC -o mod_passenger.so ../libboost_oxt.a -fPIC -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -I/usr/include/apr-1 -I/usr/include/apr-1 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -I/usr/include/httpd -D_REENTRANT -D_GLIBCPP__PTHREADS -I/usr/local/include -fPIC -lapr-1 -laprutil-1 -lpthread  -lstdc++
/usr/bin/ld: skipping incompatible /usr/lib/libaprutil-1.so when searching for -laprutil-1
/usr/bin/ld: cannot find -laprutil-1
collect2: ld returned 1 exit status
rake aborted!
Command failed with status (1): [g++ -shared SystemTime.o Utils.o Bucket.o ...]
/usr/local/lib/ruby/gems/1.8/gems/passenger-2.1.2/Rakefile:157
(See full trace by running task with --trace)

--------------------------------------------
It looks like something went wrong

Please read our Users guide for troubleshooting tips:

   /usr/local/lib/ruby/gems/1.8/gems/passenger-2.1.2/doc/Users guide.html

If that doesn't help, please use our support facilities at:

   http://www.modrails.com/

We'll do our best to help you.

The solution is(解決方法は):

yum install e2fsprogs-devel apr-devel apr-util-devel expat-devel

なんとかインストールできました。冷や冷やしたよ(>_<)

2009年3月23日月曜日

超Ruby入門

読む価値がないほどのサンプル

郵便番号検証。オレオレ検証クラス

PHP5の例

class OreValid
{
  static public function isZip($zip)
  {
    return preg_match('/^\d{3}-\d{4}$/', $zip) > 0 ? true : false;
  }
}

Rubyの例

class OreValid
  def self.zip?(zip)
    (zip =~ /^\d{3}-\d{4}$/) != nil ? true : false
  end
end

2009年3月20日金曜日

Ruby1.9.1p0のインストール

1.8と同居のために--prefixを使用

#Mac OS Xにはwgetがないので
curl -o ruby-1.9.1-p0.tar.gz -L ftp://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.1-p0.tar.gz
tar zxf ruby-1.9.1-p0.tar.gz
cd ruby-1.9.1-p0
./configure --prefix=/usr/local/ruby1.9.1
make -j3
sudo make install
毎回フルパス指定はめんどいので...
vim ~/.bash_profile
alias ruby191="/usr/local/ruby1.9.1/bin/ruby"
alias gem191="/usr/local/ruby1.9.1/bin/gem"
alias irb191="/usr/local/ruby1.9.1/bin/irb"
:wq
source ~/.bash_profile

ruby191 -v # ruby 1.9.1p0 (2009-01-30 revision 21907) [i386-darwin9.6.0]

makeの時に-jN(Nは数字)のオプションを入れると並列処理でコンパイルが速くなります

make testでfailedが1つありました。エラーも1つありました(><)

※責任は負いかねます。自己責任でどうぞ

やりたかったRuby1.9がこれでMacBookでも遊べるようになる!Merbいれてみよ〜 DataMapperも1.9compatibleだっけ?

merbインストール失敗

Dopin:ruby-1.9.1-p0 Dopin$ sudo /usr/local/ruby1.9.1/bin/gem install merb --no-ri --no-rdoc
Building native extensions.  This could take a while...
Building native extensions.  This could take a while...
Building native extensions.  This could take a while...
ERROR:  Error installing merb:
 ERROR: Failed to build gem native extension.

/usr/local/ruby1.9.1/bin/ruby extconf.rb install merb --no-ri --no-rdoc
creating Makefile

make
gcc -I. -I/usr/local/ruby1.9.1/include/ruby-1.9.1/i386-darwin9.6.0 -I/usr/local/ruby1.9.1/include/ruby-1.9.1/ruby/backward -I/usr/local/ruby1.9.1/include/ruby-1.9.1 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE   -fno-common  -O2 -g -Wall -Wno-parentheses -pipe -fno-common -Wall  -o parser.o -c parser.c
parser.rl:2:16: error: re.h: No such file or directory
In file included from parser.rl:3:
/usr/local/ruby1.9.1/include/ruby-1.9.1/ruby/backward/st.h:2:2: warning: #warning use "ruby/st.h" instead of bare "st.h"
parser.rl: In function ‘cParser_initialize’:
parser.rl:499: error: ‘struct RHash’ has no member named ‘tbl’
parser.rl:511: error: ‘struct RHash’ has no member named ‘tbl’
parser.rl:518: error: ‘struct RHash’ has no member named ‘tbl’
make: *** [parser.o] Error 1


Gem files will remain installed in /usr/local/ruby1.9.1/lib/ruby/gems/1.9.1/gems/json-1.1.3 for inspection.
Results logged to /usr/local/ruby1.9.1/lib/ruby/gems/1.9.1/gems/json-1.1.3/ext/json/ext/parser/gem_make.out

Help me!(T_T)

2009年3月2日月曜日

SSL比較

大手6社(1年間)

上記のは携帯対応のSSL証明書です。携帯対応非対応で個人向けだと思うのは、年間3200円からのRapidSSL。まずはこれで走らせて、うまく軌道に乗ればいっそのことEVSSL証明書を取っちゃうのが夢ですね。アドレスバーが緑色。逆に毒っぽいような気がしなくもない。

他にSSLの大手ってありましたっけ??

VeriSignのグローバルサーバIDとセキュアサーバIDの違い

  • グローバルサーバIDは128ビット以下の暗号化通信を128ビットに自動的に引き上げるSGC機能がある
  • セキュアサーバIDにはSGCがない