# yum install httpd
# yum install mysql
# yum install mysql-server
# yum install gd
# yum install php
# yum install php-mysql
# yum install php-gd
# yum install php-mbstring
# yum install php-ldap
# yum install php-xmlrpc
# yum install php-xml
# yum install php-intl
# yum install php-soap
# yum install tetex*
httpd.conf のDirectoryIndex に index.php を追加し,その下の行にAcceptPathInfo on を追加.
# vi /etc/httpd/conf/httpd.conf
#DirectoryIndex index.html index.html.var
DirectoryIndex index.php index.html index.html.var
#
AcceptPathInfo on
#
また,フォルダ内ファイルがブラウザで表示されないように(セキュリティ向上のため),httpd.conf内のIndexesを削除する。
起動
# /etc/init.d/httpd start
MySQLサーバーを動かし,
/etc/init.d/mysqld start
rootユーザのパスワード設定
# mysql -u root
mysql> set password for root@localhost=password('rootパスワード');
mysql> exit;
データベース作成(データベース名 moodle,ユーザ名 moodleuser,パスワード ???)
# mysql -u root -p
mysql> show databases;
mysql> CREATE DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO moodleuser@localhost IDENTIFIED BY '???';
注)Apache と MySQL が同居しない場合はlocalhostをWebサーバのホスト名にする.
参考:rootのパスワードを削除する方法(パスワードを忘れてしまった場合の対処法)
# /etc/init.d/mysqld stop
# /usr/bin/mysqld_safe --user=root --skip-grant-tables & mysql mysql
mysql> update mysql.user set Password=null where Host='localhost' and User='root';
mysql> quit;
# /etc/init.d/mysqld restart
確認
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| moodle |
| mysql |
+--------------------+
mysql> exit;
php.iniを編集.ファイルのアップロードの最大サイズ,メモリ制限は多めに設定.
# vi /etc/php.ini
magic_quotes_gpc = On (必須ではありませんが、お勧めします)
magic_quotes_runtime = Off (デフォルトのまま)
file_uploads = On (デフォルトのまま)
session.auto_start = 0 (デフォルトのまま)
session.bug_compat_warn = Off (デフォルトのまま)
upload_max_filesize = 2000M
post_max_size = 2000M
memory_limit = 2000M
Moodle を http://download.moodle.org/ からダウンロード
# wget ムードルファイルのURL(http://.../moodle-latest-26.zip)
/var/www/htmlに展開(以下では /var/www/html/moodle).展開コマンドは
# cd
# unzip moodle-latest-26.zip
# mv moodle /var/www/html/
データ用ディレクトリを /var/www/moodledata に設定.apache が読み書きできるようにする.アップロードされたファイルはここに入る.
# cd /var/www/
# mkdir moodledata
# chown -R apache.apache moodledata
http://サーバ名/moodle/ にアクセス.質問に答えていく.httpポートをあけるには,/usr/sbin/setupを使うか
# /sbin/iptables -I RH-Firewall-1-INPUT -p tcp --dport 80 -j ACCEPT;
*質問中でURLが http://.../moodle のようになるが最後に / を補わない.
*質問は「続く」でたくさんのページがあるが必ず最後まで答える.
*途中で設定ファイル config.php が作られるが,moodleディレクトリに apache が書き込めないので,表示された config.php をコピーしてエディタにペーストし,moodle ディレクトリ/var/www/html/moodle/に保存.所有者,パーミッションを以下のように変更.
# chown root.apache config.php
# chmod o-r config.php
http://サーバ名/moodle/admin/cron.php をブラウザで見てうまく働くことを確認し,次のように設定(使い方はviと同じ).
# crontab -e
*/5 * * * * wget -q -O /dev/null http://サーバ名/moodle/admin/cron.php
# /sbin/chkconfig httpd on
# /sbin/chkconfig mysqld on
http://kilin.clas.kitasato-u.ac.jp/howto/https.html の手順でおこなう.ポート80番(http)は閉じポート443番(https)をあける.httpsポートをあけるには,/usr/sbin/setupを使うか
# /sbin/iptables -I RH-Firewall-1-INPUT -p tcp --dport 443 -j ACCEPT;
そして,moodle ディレクトリ/var/www/html/moodle/のconfig.phpの
$CFG->wwwroot = 'http://...';
を,
$CFG->wwwroot = 'https://...';
に変える.また,crontab -eで設定した
http://サーバ名/moodle/admin/cron.php
を
https://サーバ名/moodle/admin/cron.php
に変える。なお,起動時にhttpsをあけるには,/usr/sbin/setupを使うか,rootでログインしてGUIのファイアウオール設定ツールを使う.
以上でインストール完了.ここで念のためシステムを再起動したほうがよい。