Tiger Server検証事始め:その4−3『Xoops』
PHPとMySQLが正常に動いていれば、まぁXoopsはすぐ動くんじゃないかと。
とりあえず、Xoops用のDBを作るところから。
$ mysqladmin -u root -p create xoops Enter password: $ mysql -u root -p mysql Enter password: Welcome to the MySQL monitor. Commands end with ; or ¥g. Your MySQL connection id is 4 to server version: 4.1.10a-log Type 'help;' or '¥h' for help. Type '¥c' to clear the buffer. mysql> grant all privileges on xoops.* -> to xoops@localhost identified by 'hogehugahonyahonya'; Query OK, 0 rows affected (0.60 sec) mysql> quit Bye $ mysql -u xoops -p xoops Enter password: Welcome to the MySQL monitor. Commands end with ; or ¥g. Your MySQL connection id is 5 to server version: 4.1.10a-log Type 'help;' or '¥h' for help. Type '¥c' to clear the buffer. mysql> quit Bye
んでもってXoopsのインストールというか設置というか。
$ curl -O "http://osdn.dl.sourceforge.jp/xoops/15115/xoops-2.0.10-JP.tar.gz" $ tar xzf xoops-2.0.10-JP.tar.gz $ cp -rp ./xoops-2.0.10-JP/html/ /Library/WebServer/Documents/xoops $ ls -l /Library/WebServer/Documents/xoops/ (略)
そしたらブラウザで、http://サーバ/xoops/install/index.php へ。
すぐに、書き込み権限が無いと怒られるので、以下のように。
$ sudo -s # cd /Library/WebServer/Documents/xoops/ # ls -F # chmod 777 uploads/ cache/ templates_c/ # chmod 666 mainfile.php # ls -ld uploads/ cache/ templates_c/ # ls -l mainfile.php
一旦ブラウザでインストール作業を終えたら、以下を実行。
# pwd /Library/WebServer/Documents/xoops # rm -rf install # chmod 400 mainfile.php # chown www:www mainfile.php # ls -l mainfile.php -r-------- 1 www www 4665 Jun 23 02:43 mainfile.php
まぁ取りあえずはコレでXoopsが動く所までは行けると思う。
ずいぶんと端折って書いてあるけど。
ところで。最後の mainfile.php の権限やオーナー・グループの変更の所ですが。
今回 Tiger Server にXoopsを入れるに当たり、本だのwebのドキュメントだの何だの眺めたんですが、大体は「chmod a-w mainfile.php」とか「chmod 444 mainfile.php」とかしてるだけで、オーナーやグループは変えてなかったりするんですけど、otherな方々に見せる必要ってあるんですかね。mainfile.phpって。
いや、MySQL上に作ったXoopsのDBへの接続パスワードとかそのまま平文で載ってるんで>mainfile.php
どうしたもんかなぁと思って chmod 400 して chown www:www しといたんですけどね。どうなんでしょうね。コレ。
まぁしばらく動かしてみて、問題無ければこのまんま、かな。
追記
そういう意味で言えば、Mac OS X Server 10.4: Issues connecting PHP to MySQL には、/etc/my.cnf の socket のパスを /tmp/mysql.sock にするより、/etc/php.ini を用意して mysql.default_socket = /var/mysql/mysql.sock にした方が*安全だ*と書いてあるのに、何故かMacな方々は /etc/my.cnf で /tmp/mysql.sock にする傾向が有る様な気がしますね。
どうしてわざわざ安全じゃない方を選ぶのかしらん。まぁいーけど。