CentOSにRedmineをインストールしてみる

CentOSにRedmineをインストール

・CentOSのアップデート
$ yum update -y

・Ruby、MySQLのインストール
$ yum install -y ruby ruby-devel rdoc mysql mysql-server mysql-devel

・gemのインストール
$ wget http://rubyforge.org/frs/download.php/56227/rubygems-1.3.3.tgz
$ tar zxvf rubygem-1.3.3.tgz
$ cd rubygem-1.3.3
$ ruby setup.rb config
$ ruby setup.rb setup
$ ruby setup.rb install
* RubyForgeは落ちていることがあるので注意+gemは最新のものを取得したほうがいいかも

・Railsのインストール
$ gem install rails --include-dependencies

・Ruby_MySQLコネクタのインストール
$ gem install mysql -- --with-mysql-config

・MySQLの設定、起動
$ /etc/init.d/mysqld start

・MySQLに接続
$ mysql -u root -p

・Redmine用のスキーマを作成
mysql> create database redmine character set utf8;

・Redmine用のDBユーザーを作成
mysql> GRANT ALL ON redmine.* TO 'redmineuser'@'localhost' IDENTIFIED BY 'redminepass';
mysql> quit;

・Redmineのインストール
$ wget http://rubyforge.org/frs/download.php/56909/redmine-0.8.4.tar.gz

・Redmineの展開&リネーム
$ tar -zxvf redmine-0.8.4.tar.gz
$ mv redmine-0.8.4 redmine

・MySQLの接続設定
$ cd redmine
$ cp config/database.yml.example config/database.yml
$ vi config/database.yml

config/database.ymlにデータベースのユーザー名、パスワードを設定。必要ならソケットも設定
production:
adapter: mysql
database: redmine
host: localhost
username: redmineuser
password: redminepass
encoding: utf8
socket: /var/lib/mysql/mysql.sock

・初期データの準備
$rake db:migrate RAILS_ENV="production"

・デフォルトのデータの作成
$rake redmine:load_default_data RAILS_ENV="production"

・apache、mod_dav_svn、subversionのインストール
$ yum install httpd mod_dav_svn subversion

・リポジトリ用ディレクトリの作成
$ mkdir /var/www/svn
$ cd /var/www/svn
$ svnadmin create sample


・branches、tags、trunkを作成
$ svn mkdir file:///var/www/svn/sample/trunk \
file:///var/www/svn/sample/tags \
file:///var/www/svn/sample/branches -m 'Create trunk, tags, and branches.'

・apacheのドキュメントルートを変更
$ vi /etc/httpd/conf/httpd.conf
DocumentRoot "/var/www"

・subversionをapacheと連携
$ vi /etc/httpd/conf.d/subversion.conf
<Location /svn>
    DAV svn
    SVNParentPath /var/www/svn
    AuthType Basic
    AuthName "Authorization Realm"
    AuthUserFile /etc/subversion/.htpasswd
    Require valid-user
</Location>

・SVNユーザーの追加
$ cd /etc/subversion
$ htpasswd -cm .htpasswd ユーザー名
$ パスワードを入力
$ パスワードを再入力
* 二人目以降追加の場合は-htpasswd -m .htpasswd ユーザー名

・redmineを起動
ruby script/server -e production -d

テーマ : 雑記
ジャンル : 日記

ApacheでSSLを使用したRewriteRuleを書くときの注意

ApacheでSSLを使用したRewriteRuleを書くときの注意しなければいけないのは、SSLのDocumentRootとhttpのDocumentRootは別々だということ。
SSLのほうのDocumentRootは、APACHE_HOME/conf/extra/httpd-ssl.confで指定できるので、RewriteRuleを書く際は気をつけること。

テーマ : 雑記
ジャンル : 日記

ApacheのREQUEST_FILENAME} -fにハマった

今までApacheのREQUEST_FILENAME} -fの所でいつもつまづいていた。
今回もApacheの設定が自分の担当だったので、こいつが必要になった。
んで、今回はわりとこの設定に時間がさけて、なんとなく設定方法を自分なりにあみだした(これが正しい使い方かわからないw)ので忘れないように書いておこうと思う。

今回の要件をザックリ説明
・ApacheとJBossの連携
・静的ページ(画像ファイル、静的html)はApacheで処理 mod_rewriteを使用
・動的ページに関するGETパラメータ等はJBossで処理 mod_proxyを使用
というカンジである

で説明するために必要な単語を作っておこう。
ホスト: localhost ←そのまんまじゃんとか言わない
JBoss側のコンテキストルート:jbossapp ←適当すぎるだろとか言わない
静的ページ:foo.html
動的ページ:bar.html
という風に定義しましょう。

私の環境としては
APACHE_HOME=C:\Program Files\Apache Software Foundation\Apache2.2
JBOSS_HOME=C:\jboss-5.0.1.GA
APACHE_DOCUMENT_ROOT=C:\www
となっております。

では本題!
http://localhost/foo.htmlは静的ページ
http://localhost/bar.htmlは動的ページなので僕が書いたRewriteRuleは以下になりました。
*ちなみにRewriteRuleはAPACHE_HOME\conf\extra\httpd-rewrite.confに記述しました。



httpd-rewrite.conf

# 1
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} -f
RewriteRule ^(.*)$ $1 [QSA,L]

# 2
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-f
RewriteRule ^/zentaku_sizuoka/(.*)$ ajp://localhost/jbossapp /$1 [QSA,P]
RewriteRule ^/(.*)$ ajp://localhost/jbossapp /$1 [QSA,P,L]




1の方が静的ページ用2の方が動的ページ用です。
1.まずRewriteCondのREQUEST_FILENAMEはURLではなくサーバ上のパスを見にいっている感があります。なのでRewriteCondを%{REQUEST_FILENAME} !-fではなく、%{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-fとすればドキュメントルート以下にファイルがあった場合となります。
それをURLとしてRewriteRuleで^/(.*)$として全てを受け取り、$1で全てを書き換えるとすれば静的ページが表示される処理になります。この場合URLの書き換えはおこなっていませんが、ファイルパスからURLに書き換えてる?とか思ってください。自分もよくわかりませんw

2の方はRewriteCondが1の逆で-fの前に!がついています。これはドキュメントルート以下にファイルがなかった場合となります。
そのあとにプロトコルをajpにするためにプロクシーを使うという意味でPオプションがついています。
そしてGETパラメータがあった場合の為にQSAオプションがついています。
QSAオプションがないとURLの後ろにhttp://localhost/bar.html?hoge=10とかあってもリライトされた段階でhttp://localhost/bar.htmlになってしまいます。

以上です^^

ちなみにその時のmod_proxyを載せておきます。参考までに


httpd-proxy.conf
<Location />
ProxyPass ajp://localhost:8009/
ProxyPass ajp://localhost:8080/
</Location>


テーマ : 雑記
ジャンル : 日記

とりあえず俺の独断と偏見によるFire Foxアドオン集

お勧めアドオンを人に教えたりするのが面倒なので、今日時点での一覧を一括で書いておこうと思った!

Cache Status
FireFoxのキャッシュ情報をステータスバーに表示して、手動、自動でキャッシュをクリアする。
長時間ブラウザを開いたりしてる人にはいいかもね。

Fire Bug
FireFox上でcssとhtmlが編集できる。(保存はできないのが難点だが)
デザイナー系の人には必須なのでは?

Fire Gestures
FireFoxにマウスジェスチャー機能をつけるアドオン。これがないと俺はネットサーフィンができません。

Firesizer
FireFoxのウィンドウサイズを特定の解像度の大きさにリサイズするアドオン。
間違いなくWEB屋とかSE系の人しか使わないw

Gmail Notifier
FireFoxを開いてる時にGmailの受信状態を確認できるツール。
新着や未読があった場合はFireFoxでそのままGmailを開くことができる。

GMarks
FireFox上からGoogle Bookmarkを利用できるようにするアドオン。
自宅や会社のPCでブックマークの同期をとりたい人には便利!

goo辞書FireFoxでテキストをドラッグしてコンテキストメニューからgoo辞書で単語検索ができるツール。
わからない日本語や英語があったらこれでGOO!←つまらなくてサーセン

Smart Bookmarks Bar
FireFoxのブックマークツールバーの表示をFaviconのみにできるツール。
ブックマークツールバーがいっぱいあってFaviconで判断できる人用。

Tab Mix Plus
FireFoxのタブ機能の挙動を操作するアドオン。
俺はこれがないとネットサーフィンできねぇw

Google Preview
FireFoxの検索結果を画像つきサムネイル表示するためのアドオン。

こんだけあれば快適FireFox生活が遅れるだろう?
俺だけとか言わない!

テーマ : 雑記
ジャンル : 日記

vine linux4系のカーネルヘッダー

Vine Linux 4系のカーネルヘッダーが必要な時は以下でインストール可能。
aapt-get install kernell-devel kernel-souce glibc-kernheaders

kernel-headersじゃなくなったんだね。。。

テーマ : 雑記
ジャンル : 日記

プロフィール

Author:キムトシ
SEの卵ぐらにはなったかなーと最近思う。
Flex,Java,Seasarなどを中心にやってきた。
簡単なインフラまわりなんかもやってきたつもり。
まだまだ覚えることはたくさんあるが、その苦しんだ分の財産を残しておこうと思う。
次のプロジェクトのたびに少しずつでも早く帰れるように・・・。

カテゴリー
最近の記事
最近のコメント
FC2カウンター
ブログ内検索
RSSフィード
リンク
By FC2ブログ

今すぐブログを作ろう!

Powered By FC2ブログ

ブロとも申請フォーム

この人とブロともになる

Mozilla Firefox ブラウザ無料ダウンロード