2010/10/21

IO Error アップローダー

先日テストしたアップローダー、ぐんぐんアップロード出来ていたはずが、
組み込みに使う為にセッティングを変えてテストしようとするとアップロードできない。
その時4つほど作ったけどどれも同じ反応。

1. アップロードできた風だがフォルダにデータは上がっていない。
2. もしくはキュー状態のまま。
3. とにかく即IO ERRORを返してくる。

フォルダのパーミッションか?変えてみたが効果なし。
それともサーバー側で拒否の呪文を入れられているか?

htaccessでの呪文。あまり入れたくないけど。

SecFilterEngine Off
SecFilterScanPOST Off


書き換えようとした際に思い出した!
いろいろアップロードされると困るので、
上層ディレクトリからhtaccessでBASIC認証入れてた!

解除したら元のように動いた。

2010/10/19

Rails環境をMAMPのhtdocs以下に作成

sampleというフォルダを作ってこれをRailsのフォルダとします。
MAMP以下に指定するばやい。長いけど忘れないように全て書いておきます。

$ rails new /Applications/MAMP/htdocs/sample
create
create README
create Rakefile
create config.ru
create .gitignore
create Gemfile
create app
create app/controllers/application_controller.rb
create app/helpers/application_helper.rb
create app/views/layouts/application.html.erb
create app/mailers
create app/models
create config
create config/routes.rb
create config/application.rb
create config/environment.rb
create config/environments
create config/environments/development.rb
create config/environments/production.rb
create config/environments/test.rb
create config/initializers
create config/initializers/backtrace_silencers.rb
create config/initializers/inflections.rb
create config/initializers/mime_types.rb
create config/initializers/secret_token.rb
create config/initializers/session_store.rb
create config/locales
create config/locales/en.yml
create config/boot.rb
create config/database.yml
create db
create db/seeds.rb
create doc
create doc/README_FOR_APP
create lib
create lib/tasks
create lib/tasks/.gitkeep
create log
create log/server.log
create log/production.log
create log/development.log
create log/test.log
create public
create public/404.html
create public/422.html
create public/500.html
create public/favicon.ico
create public/index.html
create public/robots.txt
create public/images
create public/images/rails.png
create public/stylesheets
create public/stylesheets/.gitkeep
create public/javascripts
create public/javascripts/application.js
create public/javascripts/controls.js
create public/javascripts/dragdrop.js
create public/javascripts/effects.js
create public/javascripts/prototype.js
create public/javascripts/rails.js
create script
create script/rails
create test
create test/performance/browsing_test.rb
create test/test_helper.rb
create test/fixtures
create test/functional
create test/integration
create test/unit
create tmp
create tmp/sessions
create tmp/sockets
create tmp/cache
create tmp/pids
create vendor/plugins
create vendor/plugins/.gitkeep
で作成されました。

Ruby on Rails に必要

インストールしたサーバーが10.4(Tiger)なので、付属するXCodeのバージョンは2.1
Rubyのgemsをインストールする際に警告される。

Warning: The installed version of Xcode (2.1) is known to cause problems. Version 2.5 or later is recommended on Mac OS X 10.4.

そのままインストールは続行されるが途中zlibの解凍作業でエラーが出る。
On Mac OS X 10.4, zlib 1.2.5 requires Xcode 2.4.1 or later but you have Xcode 2.1.
Error: Target org.macports.extract returned: incompatible Xcode version
Log for zlib is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_archivers_zlib/main.log
Error: The following dependencies failed to build: ruby openssl zlib readline
Error: Status 1 encountered during processing.
To report a bug, see

結局のところXcode2.5以上のバージョンを用意せよとのこと。
アップルのデブ専に行ってみるしか無い。

あった!
Apple Developer の Downloads & ADC Program Assets
以下の developer toolsのページ。
コマンドFで 『Xcode』を探すと
Xcode 2.5 Developer Tools

Xcode 2.5 is an update release of Xcode developer tools, providing bug fixes over Xcode 2.4.1. Xcode 2.5 can be installed on Tiger (Mac OS X 10.4) or on Leopard (Mac OS X 10.5). Xcode 2.5 may be used on Leopard along side the Xcode 3.0 tools, providing a smoother migration path to Leopard for those projects not immediately ready to move to the Xcode 3 tools. See the release notes for Leopard support details and related packaging changes.
Download Name File Size Date Posted
Xcode 2.5 - Release Notes (PDF) 222 KB 02 Nov 2007
Xcode 2.5 Developer Tools (Disk Image) 902.9 MB 30 Oct 2007

発見。3.0よりも後に出ている。
Xcode3.0は10.5のインテル用なので無視。

Mac OS 10.4にRuby on Rail

まずはMacPortを入手。
これは開発に必要なパッケージをインストールするのに便利なモノ。
必要なバージョンはこちらから探して入手=>Mac Port

.dmgでパッケージが出てくるのでインストール。
インストールしたら、最新版にアップデート。
ターミナルからアップデートのコマンドをウツ。
$ sudo port -v selfupdate

インストール後、以下のコマンドを入力して
$ echo $PATH
『/opt/local/bin』が行頭に入っていれば成功。
/opt/local 以下にインストールしたパッケージが格納されます。

次にRubyGemのインストール
Rubyのライブラリを管理する便利なツールです。
先ほどインストールしたMacPortを利用してインストール。
$ sudo port install rb-rubygems

Tigerに標準装備のRubyは古いバージョンなので
以下のコマンドで最新バージョンになっているか確認。
$ ruby -v

RubyGemsが入ったので、あとはRailsのインストール。
Gemコマンドを使ってインストール。
$ sudo gem install rails --include-dependencies

以上でRailsのインストールは完了。

2010/10/17

MAMPの設定

あまり使わないローカルサーバーの設定。
使いたいときにアクセスすると、スタートページにはこんな表示。
Error: Could not connect to MySQL server!

MySqlと接続できていないとのことなので、設定ファイルを確認。
場所は以下の通りで、『$link = @mysql_connect』の行を探す。
/Applications/MAMP/bin/mamp/index.php

ルートパスワードを設定していないと駄目なので、先にそちらを設定して
設定したパスワードをこちらに入力してホゾン。
修正前
$link = @mysql_connect(':/Applications/MAMP/tmp/mysql/mysql.sock', 'root', 'root');

修正後
$link = @mysql_connect(':/Applications/MAMP/tmp/mysql/mysql.sock', 'root', 'パスワード');

関連するデータベースユーティリティーにも同じ設定をする。
/Applications/MAMP/bin/phpMyAdmin/config.inc.php

修正前
$cfg['Servers'][$i]['password'] = 'root';

修正後
$cfg['Servers'][$i]['password'] = 'パスワード';

これでMAMP再起動してつながればオッケ。