• さくらの新VPSへお引越し & 設定

    さくらのVPSが新しくなった。同じ月980円で
    510M 20Gから 1G 100Gになったので
    「これは変えるしか無い!(・ω・´」
    ってことでお引越し!
    前回VPS借りたときは最初にやった設定なんかがあまり記録してなかったので今回は記録します。
    トラブったところもメモメモ。今回の設定と入れるものは以下のとおり
    [root権限変更]
    [iptables設定]
    [apache/PHP/WordPress/Ruby on Rails]

    ——————————————————-
    [root権限変更]
    借りたら先ずやるやつね。
    http://www.iex3.info/archives/1008

    こことか参考にさらっとやる(セキュリティの関係上oyabunn.comがどうなってるかは教えないけどね)

    [iptables]
    ググればでてきます。SSHとHTTPだけOKで他OUTな感じにする
    http://akibe.com/centos-setup-4-apache/
    このサイトが詳しい

    [apache]
    http://akibe.com/centos-setup-4-apache/
    apacheもここに従う

    [MySQL]
    MySQLは yum install mysql-server だとバージョンが古い(5.5が出てるのに5.1とか)問題が。
    どうするかというと yumに新しいリポジトリを追加します
    REMIリポジトリの追加
    ここを見れば落とし方はOK。ただ設定しないと使えないので

    [shell]
    vi /etc/yum.repos.d/remi.repo
    [/shell]

    でremiのところの
    enable=0をenable=1に。更に
    priority=1(始めからなってるかも)にする。
    これで使えるので

    [shell]
    sudo yum -y install mysql-server
    [/shell]

    これで入る。
    ユーザーパス設定や余分なユーザー削除などはMySQL初期設定はぐぐってね!

    「PHP」
    これも古いバージョンは入れたくないのでremiで。

    [shell]
    yum –enablerepo=remi info php
    [/shell]

    これで確認したところremiで5.3.10が入るらしい。(5.4入れたいけどまぁいいよね)
    確認した後入れちゃいます

    [shell]
    yum -y install –enablerepo=remi  php php-mbstring php-mysql php-gd
    [/shell]

    これは「remiを有効に php php-mbstring php-mysql php-gdを入れる」って意味です。
    php以外に沢山入れてるのはあとでデータベースとつないだりする時に要るから。

    「WordPress」
    まず、最新バージョンを確認する。今は3.3.1らしい。
    cd $HOMEして

    [shell]
    wget http://ja.wordpress.org/wordpress-3.3.1-ja.zip
    [/shell]

    あとは、chmodが必要なので
    http://akibe.com/centos-setup-8-php-wordpress/
    を参考に。
    んで http://ホスト/wordpress で繋いで入れた!
    あとは普通ならちょろっと設定すればいけるんだけど、データベースの作成の時に
    「データベースが作れません(IDとパスワードはあってるっぽい)エラー」
    でNG(><
    どうもDBが作れないらしい。・・・ならば作っちゃえ!ってことで
    mysql -u root -pでまずmysqlに入ってDBとユーザーの作成とかとか
    参考になるのはこのサイト
    んで、wp-config-sample.phpコピってwp-config.phpを作成してさっきの設定を書けばOK

    [Rails]
    今回はrvm(複数のRubyバージョンの管理)を入れる。
    まず bash < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer )
    でrvmを入れる、そしたら
    source /etc/profile.d/rvm.sh
    を実行してrvmを使える状態にする。入ったら早速Rubyを入れましょう
    本当は1.9.3を入れたいんですが1.9.3だとRailsが
    [shell]
    ERROR:  Loading command: install (LoadError)
    cannot load such file — zlib
    ERROR:  While executing gem … (NameError)
    uninitialized constant Gem::Commands::InstallCommand
    [/shell]

    こんなエラーを吐いて入らない。(もちろんzlibは入れようとしてみた)
    http://ubuntuforums.org/showthread.php?t=1494997
    ここによるとRailsと1.9.3のつながりが良くないらしくて、
    「じゃあ1.9.2なら入るんじゃ?Macも1.9.2で入ったし」ということで1.9.2を入れる
    rvm install 1.9.2
    で入れる。そしたら
    rvm use 1.9.2 –default
    で使用状態に。ruby -vやgem envで状態を確認しよう。確認したら
    gem install rails
    これでRails入る!

    実はまだrailsアプリを動かしてないのでちゃんと入ってるか怪しい(^^;
    今度Railsが動くかどうか、動かなかったら動くまでをUpするね!

    /余談/
    zlibを入れようとした時に
    rvm package install zlib
    としたけどpackageがエラー。どうも新しいrvmではpackage => pkgに変更なったらしいよ
    rvm pkg install zlib
    が動いた(^^

  • 透明なセルの作り方

     

    TableViewの中にセルじゃなくて画像だとかその他のものを表示したい時に
    セルを透明にしてその上に表示したいViewを貼る といったことをします。
    これのやり方
    [objc]
    cell.backgroundView = [[[UIView alloc] initWithFrame:CGRectZero] autorelease];
    [/objc]

    こんな感じです。

  • rvmによるrubyのアップデートでハマる

    Rails3のいい本があったので早速購入。
    rvmというのがあってrubyの複数バージョンを保存&切り替えが出来るというので入れてみた。(入れ方はネットにもある http://net.tutsplus.com/tutorials/ruby/how-to-install-ruby-on-a-mac/ これとか)
    その入れるので先ずつまずく
    1)bash << (curl・・・ が動かない
    どうも文法が変わったらしく
    [shell]
    bash -s stable < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)
    [/shell]

    こうじゃないとダメっぽい。

    なんとか入れた所で次のエラー

    2) rvm install 1.9.3がうごかない
    エラーとしてはXcode4.2と関係があるらしい( http://kuroigamen.com/55 )
    ちなみに rvm install 1.9.2 –with-gcc=clang
    でいけるというのも試したけど
    You requested building with ‘clang’ but it is not in your path.
    っていうエラー(^^;;;
    しょうがないからGCCを入れた。入れたらコマンドでvi ~/.bashうんたらって打って
    export文書いて rvm install1.9.3を実行。そしてエラーw
    rvm install 1.9.2に下げて実行したらできた(TT
    最後に rvm use 1.9.2をして
    ruby -vで確認。

    [Rails]
    「Railsはどのバージョンだろ」と思って押したrails -vが

    /Library/Ruby/Site/1.8/rubygems/dependency.rb:247:in `to_specs’: Could not find rails (>= 0) amongst [bundler-1.1.1, bundler-1.1.1, rake-0.9.2] (Gem::LoadError)
    from /Library/Ruby/Site/1.8/rubygems/dependency.rb:256:in `to_spec’
    from /Library/Ruby/Site/1.8/rubygems.rb:1210:in `gem’
    from /usr/bin/rails:18

    というエラーを吐いてきた。どうも今まで入っていたRailsが使えないっぽい新しく入れないと
    gem env
    でこのgemがRuby 1.9.2のものであるのを確認(gemはrubyに入っているもの)
    sudo gem install rails
    でインストール(^^

    試しに古いプロジェクトを起動しようと思って
    rails s
    ってやったらエラった。どうもプロジェクトに入ってた設定というか bundle installで入っているものが足りないらしい。
    まぁバージョンアップしたから当たり前だよね。
    とりあえず古いプロジェクトフォルダで
    bundle install
    その後
    rails s
    で localhost:3000で動作確認!やったね!

  • uses-permission と permission

    前まで繋がってたTwitterのTLを持ってくるだけのアプリがどのURLへもアクセス出来なかった。
    端末はネットにつながってるわけだし、プログラムも前は動いたものなので、
    「パーミッション?」と思って調べてみると<permission>と<uses-permission>は意味が違うらしい。
    http://stackoverflow.com/questions/3850799/diffrences-between-uses-permission-and-permissions-tag-in-androidmanifest-xml

    普通、自分のアプリでHTTPなんかを使うときにはマニュフェストXMLにパーミッションの設定が必要。
    だけどそのときpermissionでこんな風にやるのは間違い。

    [xml]
    <permission android:name="android.permission.INTERNET">
    </permission>
    [/xml]

    こんな風になるんだけど、このpermissionってのは新しく自分でパーミッションを作って
    他のアプリからのアクセスなんかに使うものらしい。
    自動生成だと下のような所でやるとこれができちゃう

    だから、既存の知られているパーミッションを自分のアプリで使えるようにする場合は
    ここでpermssionを設定する。自動生成だと下画像にあるここね。

    んでXMLだとこんな感じ

    [xml]
    <uses-permission android:name="android.permission.INTERNET">
    </uses-permission>
    [/xml]

    とするのが正しい。
    実際これで繋がった(^^ 助かった〜
    でもなんで前はpermissionのままでつながってたのかは不明。

  • transformされた後のViewのサイズ

    よく view.bounds.size でビューのサイズを取得するが
    cgaffinTransformである倍率でサイズが変わったビューのサイズは
    view.bounds.size
    では得られない。transformされてる時にboundsとframeでサイズが変わるらしい

    .bounds ・・・ transformと関係ない。自身のサイズ
    .frame
     ・・・ 親ビューにおいて見えている通りの位置とサイズ

    従って、拡大されているビューのサイズを取得するにはframe.sizeを使う。
    とはいっても取得できるのはtransofrmで回転されてる場合の回転されている右下・・・とはいかない。
    飽くまで回転されて表示されているその領域の左上と縦横のサイズがframeに入っているだけ。