2011年4月28日木曜日

FirefoxでのVideoタグ

Firefox4でvideoタグを使って遊んでいたらいくつかつっかかったところがあったのでメモ.

ローカルのビデオファイルを再生し,canvasタグでイメージを読み込み書き換えようとした場合の問題

ローカルのビデオファイルをcanvasタグで取得し,書き換えようと実行したら,'Security error" code: "1000'が発生.
これは,ブラウザのセキュリティの問題らしくabout:configを書き換えることで対処可能.
参考:http://d.hatena.ne.jp/chiheisen/20100815/1281885412
変更箇所
security.fileuri.strict_origin_policy を false に変更

サーバーのoggファイルを再生できない

サーバーにoggのビデオファイルを配置したのはいいが今度は再生できないという問題に遭遇.
Apache 2の場合は拡張子に対して複数のMIMEを指定することで対処が可能らしい.
しかしIISではひとつの拡張子に対してひとつのMIMEしか指定できなかったので方法がわからなかった.
調べてみると,IISでも動作させている方がおり以下の設定で動作する
IIS側ではMIMEに

  • 拡張子:.ogg
  • MIME:application/ogg
を追加すればよい.
次にHTMLファイルのほうだが, とする,正しくType指定をすると動作する
参考:http://devharbor.blogspot.com/2010/06/ogv-and-html5-player-in-firefox.html

2011年4月19日火曜日

Redmineの設定

インストールができたところで次は設定
今回行う設定はLDAP連携と,Git連携である

LDAP連携

redmineに管理者でログイン

  • 設定 → LADP認証 → 新しい認証方式
  • 名称:区別がつくように
  • ホスト:LDAPサーバーのURLを指定
  • ポート:デフォルトでは389
  • アカウント:設定している場合は入力
  • パスワード:設定している場合は入力
  • 検索範囲:LDAP検索ベースの値を入力
  • 合わせてユーザを作成:チェックを入れると初回ログイン時に自動的にユーザーを追加する
  • ログイン:uid
  • 名前:cn
  • 苗字:sn
  • メールアドレス:main
後はログイン時に自動的にLDAP認証を行い,redmineにユーザーがいない場合はユーザーの追加ダイアログに移行する

Gitリポジトリとの連携

今回の環境ではGitリポジトリが配置されているのがファイルサーバーでありwebサーバーとは別に配置されている
そのため,そのままではGitリポジトリを読み込むことができない
そこで,autofsとnfsを用いて,redmineからGitリポジトリへアクセスした場合に自動でマウントする設定を行う
まず,nfsとautofsのインストールをする

# apt-get install nfs-common autofs
次にautofsの設定を行う
/mntディレクトリにアクセスした場合に自動でマウント
# echo /mnt auto.nfs >> /etc/auto.master 
マウントの設定ファイルを記述 ipaddrはIPアドレスを入力.dirにはgitが含まれるディレクトリを選択
ただし,すでにサーバーでgitが含まれるディレクトリがnfsで利用可能であることが条件
# echo "git -fstype=nfs,r {ipaddr}:{dir}
autofsを再起動
# /etc/init.d/autofs restart
後はredmineでリポジトリを参照する場合に/mnt/git/{repo_name}を参照すれば良い

Gitで詰まったところ

ここからは自分が設定で詰まったGitを参照する方法
ファイルサーバー上のgitディレクトリに空のプロジェクトを作成して裸のGitを作成する

$ mkdir new_proj
$ cd new_proj
$ git --bare init
次に,そのディレクトリ対してソースを追加する.追加するソースのディレクトリに移動
git pathには上記で作成したGitディレクトリのパスを指定
$ git init
$ git add .
$ git commit -m '{comment}'
$ git add origin {git path}
$ git push
以上

Ubuntu Server 9.10 に Redmine をインストールメモ

Redmineというプロジェクト管理ツールをインストールし,作成するプロジェクトのメモ替わりとして使ってみようと思い実際にインストールしてみたときのメモ.

環境はUbuntu Server 9.10
アップデートはすべて当てた状態
すでにApache 2, vim がインストールされていると仮定
# で始まるコマンドは管理者権限(Ubuntuで管理者権限にする場合はsudo –s)

Rubyのインストール

まずは,Redlineを動作させるために必要なrubyをインストール

# apt-get install ruby 
# apt-get install ruby1.8-dev 
# apt-get install openssl-ruby 
# apt-get install rubygems 
# apt-get install rake 
次に,Ruby on Railsをインストール
最新版のRedmine 1.1.2ではRails2.3.5が求められるのでバージョンを指定してインストール
# gem install rails -v=2.3.5
rackもインストール
バージョンは1.0.1
# gem install rack -v=1.1.2

SQLのインストール

設定のいらないSQLiteを利用する.

# apt-get install sqlite3 swig libsqlite3-dev 
# gem install sqlite3-ruby

Passengerのインストール

Ruby on Rails のアプリケーションをApache 2上で動作させるために必要なモジュール.redmine単体では必要ないが,今回はApache 2に組み込むのでインストールする

# apt-get install apache2-prefork-dev g++ libopenssl-ruby1.8 libcurl4-openssl-dev 
# gem install passenger 
PassengerのApache 2用モジュールのインストール
# passenger-install-apache2-module
注意事項を読みEnterキーを押すとインストールが始まる.
この時ビルドに必要なモジュールが足りない場合,インストールするようにメッセージが表示されるので,もし足りない場合はインストールする.
以下のような結果が表示される(一部抜粋)
・・・省略
Apache 2 にPassengerを組み込むために以下の2つのファイルを作成する
1つ目
# vim /etc/apache2/mods-available/passenger.load
記述する内容は上記のインストールの際に表示された文字列のLoadModuleの行
インストールするPCの毎に設定が違うので注意
2つ目
# vim /etc/apache2/mod-available/passenger.conf
記述する内容は上記のインストールの際に表示された文字列のPassengerRootとPassengerRubyの行
インストールするPCの毎に設定が違うので注意
また,redmaineがインストールされるエイリアスを設定する場合はRailsBaseURIを追加する
(今回は/var/wwwディレクトリの下にredmineのシンボリックリンクを貼ったので/redmineとした)
次にApache 2から追加したPassengerのモジュールを読み込むためにシンボリックリンクを貼る
最後にApaceh 2を再起動する
/etc/init.d/apache2 restart

redmineをインストール

# wget http://rubyforge.org/frs/download.php/74419/redmine-1.1.2.tar.gz
# tar -zxf redmine-1.1.2 /usr/local/bin/redmine
# mv redmine-1.1.2 /usr/local/bin/redmine
redmineのディレクトリへ移動
# cd /usr/local/bin/redmine
データベースの設定を行う
# cp config/database.yml.example database.yml
# vim database.yml
database.ymlへ記述する内容
データベースの設定とユーザ名及びバスワードを設定する
  production:
     adapter: sqlite3
     database: db/redmine.db
     host: localhost
     username: admin
     password: admin
     encoding: utf8
セッションキーの設定
# vim config/environment.rb
keyとsecretを適当に設定する.secretは30文字以上
config.action_controller.session = {:key => "_key_", :secret => "_secret_" }
データベースの初期化
# rake db:migrate RAILS_ENV="production"
データベースの読み込み
# rake redmine:load_default_data RAILS_ENV="production"
言語の設定を求められるので,自分の環境にあった言語を入力

最後にApache 2へのシンボリックリンクを作成し,ユーザ権限を一部のディレクトリに追加して終わり
# ln -s /usr/local/bin/redmine /var/www/redmine
# chown -R redmine:redmine log tmp files public/plugin_assets db/redmine.db
# chmod -R 755 log tmp files public/plugin_assets db/redmine.db

参考:http://redmine.jp/guide/RedmineInstall/