«前の日記(2011-08-24) 最新 次の日記(2011-08-26)» 編集

いがいが日記


2011-08-25 [長年日記]

_ さくらVPSへ引っ越しした(2) - apacheをいれてtdiaryを動かす

つづき。apacheをインストールするよ。

$ sudo aptitude install apache2

/etc/apache2/conf.d/security を修正

-ServerTokens Full

+ServerTokens Prod

-ServerSignature On

+ServerSignature Off

-TraceEnable On

+TraceEnable Off

$ sudo /etc/init.d/apache2 reload

$ sudo /etc/init.d/apache2 restart

ここまででブラウザからアクセスできるはずなんで確認。

wwwXXXXXX.sakura.ne.jp/ へアクセスすると /var/www 以下が見える。It works!

apacheの設定ファイルを編集。

$ sudo vim /etc/apache2/sites-available/default

設定はdiaryディレクトリの .htaccess でいじるので、それを使えるようにだけしておく。

- AllowOverride None

+ AllowOverride ALL

私は / へのアクセスを日記へ飛ばしたいのでリダイレクトルールも書きました。

RedirectMatch 301 ^/$ http://igarashikuniaki.net/diary/

# このリダイレクト先はドメインまで含めて書かないとダメだと読んだのですが、

# 指定したいことは diary/ へ飛ばす、だけなので

# igarashikuniaki.netの部分を書かずに済ませる方法をご存知の方は教えていただけるとうれしいです。

あとでURLの書き換えを(RewriteEngine云々)したいので以下をONにしておく。

$ sudo ln -s /etc/apache2/mods-available/rewrite.load /etc/apache2/mods-enabled/rewrite.load

$ sudo /etc/init.d/apache2 restart

引き続きtdiaryをインストールします。

(前提として自分しかこのOSを使わない想定でパーミッションを777にしたりしています。

複数ユーザで使う場合はapacheユーザ(www-data)を含むグループを作ったりして設定変えてください。)

インストールするtdiaryはtdiary-coreの先端の場合です。

git でソースを持ってきたり、/var/www/diary を作ってファイルをコピーしたりしていきます。

$ mkdir -p ~/src/tdiary

$ cd ~/src/tdiary

$ git clone git://github.com/tdiary/tdiary-core

($ git clone git://github.com/tdiary/tdiary-theme)

($ git clone git://github.com/tdiary/tdiary-theme-nonfree)

$ sudo mkdir /var/www/diary

$ sudo chmod 777 /var/www/diary

設定ファイルを/var/www/diary/へコピーして設定します。(設定はあとで)

$ cp tdiary-core/tdiary.conf.sample /var/www/diary/tdiary.conf

$ cp tdiary-core/dot.htaccess /var/www/diary/.htaccess

themeとjsフォルダはハードコピーすることに。

apacheで設定したらシンボリックリンクでもいい。

$ cp -r tdiary-core/theme /var/www/diary/.

$ cp -r tdiary-core/js /var/www/diary/.

/var/www/diary 以下のファイルの設定をしていきます。

(設定に関しては tdiary-core/doc/INSTALL.html も参考。)

$ cd /var/www/diary

index.rb と update.rb はcloneしたソースファイルをrequireするようにします。

$ vi index.rb

#!/home/igaiga/.rvm/rubies/ruby-1.9.2-p290/bin/ruby

require '/home/igaiga/src/tdiary/tdiary-core/index.rb'

$ vi update.rb

#!/home/igaiga/.rvm/rubies/ruby-1.9.2-p290/bin/ruby

require '/home/igaiga/src/tdiary/tdiary-core/update.rb'

つづいてtdiary.conf、ひとまずはデータ格納場所だけ書いておけばOKでしょう。

$ vi tdiary.conf

@data_path = '/home/igaiga/tdiary_data'

.htaccessを編集。RewriteEngine、RewriteBase、RewriteRuleの3行は

html_anchorプラグインで使う一連の設定なので使ってない方は不要です。

$ vi .htaccess

RewriteEngine on # html_anchorプラグインで使う一連の設定

RewriteBase /diary # html_anchorプラグインで使う一連の設定

RewriteRule ^([0-9\-]+)\.html$ index.rb?date=$1 # html_anchorプラグインで使う一連の設定

<Files update.rb>の設定内の #ここ に書くファイルをつくります。

AuthName tDiary

AuthType Basic

AuthUserFile /home/igaiga/tdiary_data/.htpasswd #ここ

Require user iga #ここ

$ mkdir ~/tdiary_data

$ chmod 777 ~/tdiary_data

$ cd ~/tdairy_data

$ htpasswd -c .htpasswd iga

ここまででアクセスできるか確認。

wwwXXXXXX.sakura.ne.jp/diary/ でtdiaryが見えたら成功!

動かない場合は /var/log/apache2/error.log をヒントに修正していきます。

次に右上の追記ボタンを押して日記を書けるか確認。

OKだったら設定画面からtdirayの設定をしていきましょう。

これでtdiaryが使えます。No tDiary, No life! :)

まとめ。この状態で /var/www/diary 以下のファイルはこんな感じになります。

.htaccess

index.rb

update.rb

tdiary.conf

js/

theme/

~/src/tdiary/ は tdiary-core/ があればOK。

構成に関してはshinoさんのページが参考になります。

http://www.freedomcat.com/diary/?date=20110113#p01

また、会長さんのページを多々参考にしました。

http://www.tamoot.net/d/20101109.html#p03

shinoさん、会長さんありがとうございます!

そしてもうちょい続きます。tdiary-contribを使おうの巻へつづく。


«前の日記(2011-08-24) 最新 次の日記(2011-08-26)» 編集