« 過剰な個人情報保護 | トップページ | メディアが持つ「手の本数」は減らせない »

2006年2月11日 (土)

Moodle on FreeBSD-5.4

(2009.1.19 追記)以下の内容は2006年の古いものです。2009年1月に作成した記事を参照してください。


忘れないうちに、備忘録としてメモします。導入した構成は以下の通り。

  • FreeBSD-5.4
  • Postgres-SQL 7.4.11
  • Apache-2.0.55_2
  • PHP-5.1.2(など)
  • Moodle-1.5.2

●FreeBSD-5.4の導入
boot.flp, kern1.flp, kern2.flp の3枚のFDを作ることに注意。他は略。

●Postgres-SQL 7.4.11
DBサーバーを導入します。

  1. portから導入
    host# cd /usr/ports/databases/postgresql74-server/
    host# make config
    (NLSにチェックがついているのを確認)
    host# make install
  2. boot時に起動するように設定。
    /etc/rc.conf に
    postgresql_enable="YES"
    を追加する。
  3. 起動。
    host# /usr/local/etc/rc.d/010.pgsql.sh initdb
    host# /usr/local/etc/rc.d/010.pgsql.sh start
  4. DBのユーザ登録、パスワード設定、DB作成

    host# su - pgsql
    host% psql -c "create user moodleuser createdb" template1
    host% psql -c "alter user moodleuser password 'hoge';" template1
    host% psql -c "create database moodle;" -U moodleuser template1
    host% psql -c "alter user moodleuser nocreatedb;" template1
    host% exit
    host#

●Apache-2.0.55_2
Webサーバーを導入します。

  1. portからインストール
    host# cd /usr/ports/www/apache20/
    host# make install
  2. boot時に起動するように設定。
    /etc/rc.conf に
    apache2_enable="YES"
    を追加する。
  3. /usr/local/etc/apache2/httpd.conf 設定
    ●変更する行は以下のもの(適当なところを探す)。
    ServerAdmin

    DirectoryIndex index.php index.html index.htm index.html.var
    ●追加する行
    AddType application/x-httpd-php .php4 .php3 .phtml .php
    AddType application/x-httpd-php-source .phps

    AcceptPathInfo On
    <Directory /usr/local/www/data/moodledata>
    AllowOverride None
    Order Deny,Allow
    Deny from all
    </Directory>
  4. 起動のテスト
    host# /usr/local/etc/rc.d/apache2.sh start
    (ブラウザでアクセスして動いているかチェック)
    ↓確認したら、いったん Apache を止めておく。
    host# /usr/local/etc/rc.d/apache2.sh stop

●PHP-5.1.2(など)
PHP言語を導入します。

  1. portからインストール
    host# cd /usr/ports/lang/php5-extensions
    host# make config
    (GD, MULTIBYTE, POSTGRES にチェック。他にも、必要そうなもの(ZLIBとかPDFとか)を適当につける。)
    host# make install
    こうすると、php-5 本体もイモヅル式にインストールされる。
  2. /usr/local/etc/php.ini がない場合は、/usr/local/etc/php.ini-recommend をコピーして使うが、その際に、mbstring関係が
    magic_quotes_gpc = On
    session.bug_compat_warn = 0
    mbstring.language = Japanese
    mbstring.internal_encoding = EUC-JP
    mbstring.http_output = EUC-JP
    となっていることを確認する。
  3. phpinfoの設置
    /usr/local/www/data/phpinfo.php に以下のものをおく
    <?php

    // Show all information, defaults to INFO_ALL
    phpinfo();

    // Show just the module information.
    // phpinfo(8) yields identical results.
    phpinfo(INFO_MODULES);

    ?>
    Apache を再び起動する。
    host# /usr/local/etc/rc.d/apache2.sh start
  4. ブラウザで http://サーバ/phpinfo.php にアクセスして確認。 ↓そのあと、また Apache を止めておく。
    host# /usr/local/etc/rc.d/apache2.sh stop

●Clamav のインストール
アップロードされたファイルがウイルス感染していないかどうかを調べます。

  1. portからインストール
    host# cd /usr/ports/security/clamav
    host# make config
    設定画面が出たら、CURL にチェックをつける
    host# make install
  2. インストールが終ると、 /usr/local/bin/clamdscan に入るので、あとで moodle の設定の時に利用します。
  3. ついでにMoodle以外でも利用する設定
    /etc/rc.conf に
    clamav_freshclam_enable="YES"
    clamav_clamd_enable="YES"
    clamav_freshclam_flags="--daemon-notify=/usr/local/etc/clamav.conf --checks=12 --user=clamav --log-verbose"
    を書いておきます。(上記3行目はかなり長いオプションです。) MTA(sendmailなど)からの利用も可能です。
  4. デーモンを起動しておきます。
    host# /usr/local/etc/rc.d/clamav-freshclam.sh start
    host# /usr/local/etc/rc.d/clamav-clamd.sh start
    なお、/var/log/clamav にログが溜ります。

●Moodle-1.5.2
いよいよmoodleを導入します。

  1. portからインストール
    host# cd /usr/ports/www/moodle/
    host# make install
    インストール終了時に「php4」と出るが気にしない。
  2. 日本語パッチ

    http://oku.edu.mie-u.ac.jp/~okumura/linux/?Moodle の冒頭にあるパッチを当てる。ただし、ちゃんと当たらないところがあるので、 パッチが当たってないファイルを自分で探して、エディタで当て直す。


    host# cd /usr/local/www/data/moodle
    host# fetch -n http://oku.edu.mie-u.ac.jp/~okumura/moodle.diff.txt
    host# patch -p1 < moodle.diff.txt
    host# emacs -nw `find /usr/local/www/data/moodle -name \*.rej`
    なお、「三重大学」という単語を /usr/local/www/data/moodle/lang/ja にあるファイル名が .orig で終るファイルの更新されたものから捜し出して、これも自分で修正する。
  3. .htaccessの設定
    /usr/local/www/data/moodle/.htaccess に以下のものをおく
    DirectoryIndex index.php index.html index.htm

    <IfDefine APACHE2>
    AcceptPathInfo on
    </IfDefine>

    php_flag magic_quotes_gpc On
    php_flag magic_quotes_runtime Off
    php_flag file_uploads On
    php_flag short_open_tag On
    php_flag session.auto_start Off
    php_flag session.bug_compat_warn Off
    php_value upload_max_filesize 2M
    php_value post_max_size 2M
  4. Apache を再び起動する。
    host# /usr/local/etc/rc.d/apache2.sh start
  5. 設定をする。
    http://サーバー/moodle/install.php
    にアクセスして設定する。

|

« 過剰な個人情報保護 | トップページ | メディアが持つ「手の本数」は減らせない »

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/140645/8609195

この記事へのトラックバック一覧です: Moodle on FreeBSD-5.4:

« 過剰な個人情報保護 | トップページ | メディアが持つ「手の本数」は減らせない »