ServersMan@VPS と hyperestraier の設定
環境
ServersMan@VPS の OS は ubuntu 10.04 を選択した。 apache と hyperestraier を設置したときのメモ(2011/01/24)。
SSH で接続する
SSH のポートが変わっているので
ssh root@[IP address] -p 3843
としてアクセスする。
ユーザを追加して SSH で root ログインを禁止する
adduser your_user_name
としてユーザを追加する。 次に、/etc/ssh/sshd_config を開き、PermitRootLogin を no にする。
#PermitRootLogin yes
PermitRootLogin no
SSH を再起動する。
/etc/init.d/ssh restart
hyperestraier のインストールと設定
インストール
ubuntu のパッケージを利用して
apt-get install hyperestraier
でインストールする。
/usr/share/hyperestraier/estseek.conf
/usr/share/hyperestraier/estseek.conf に hyperestraier の設定をする。 まず、indexname の部分で hyperestraier のデータベースのファイルを指定する。
indexname: /path/to/casket
次に、replace でローカルのパスと URL との変換を指定する。
replace: ^file:///path/to/html/{{!}}http://transitive.info/
/etc/default/hyperestraier
OS 起動時に hyperestraier が起動するように /etc/default/hyperestraier の NO_START を
NO_START=0
のようにする。
cron でインデックスを作成する
私の場合は、インデックスを作成するシェルスクリプト update_casket を作り
crontab -e
で毎日、実行するようにした。
apache
ディレクトリの中身を表示しないよにする
-Indexes を追加すれば良い。具体的には、/etc/apache2/sites-available/default の中で
<Directory /var/www/html>
Options -Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
とする。
/var/www/cgi-bin に estseek.cgi を配置する
/var/www/cgi-bin 以外のところに cgi を配置しようとしたが、 なぜかうまくいかなかった。 ネットで検索して調べたところ、SELinux が関係ありそうで、 深入りすると面倒なことになる予感がしたので、素直に /var/www/cgi-bin に estseek.cgi を置くことにした。
mkdir /var/www/cgi-bin/estseek
cp /usr/share/hyperestraier/estseek.* /var/www/cgi-bin/estseek
のようにしてファイルをコピーする。
ls /var/www/cgi-bin/estseek
estseek.cgi* estseek.conf estseek.help estseek.tmpl estseek.top
のようになっている。これで http:://IP address/cgi-bin/estseek/estseek.cgi で hyperestraier にアクセスできるはず。
後、URL の cgi-bin/estseek の部分は冗長なので http:://IP address/search/estseek.cgi で アクセスできるように apache の設定をする。 /etc/apache2/sites-available/default を開いて
ScriptAlias /search/ /var/www/cgi-bin/estseek/
<Directory "/var/www/cgi-bin/estseek">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory
を追加する。
apache 再起動
/etc/init.d/apache2 restart
ajaxterm.py がメモリをたくさん使う(2011-04-11)
メモリを20%も使っていた。私には不要なので ajaxterm を動かさないことにした。
/etc/init.d/ajaxterm stop
で止まると思ったのだがうまく行かなかった。
ps aux | grep ajaxterm
で PID を調べて root で
kill <pid>
としてプロセスを止めた。
そして http://yasu-2.blogspot.com/2010/12/dti-vpsssh.html にあるように
update-rc.d -f ajaxterm remove
とした。