自分用のノウハウ集として、ここ10年程、Mac上でFSwikiを愛用しています。
ただ、困ったことに、OSをアップデートすると、時々FSwikiが動かなくなります。その度に、関連する設定をする必要があるのですが、ネット上の情報は結構込み入っています例えば、
このページを読むと、私のような素人は「お手上げ」の気持ちになってしまいます。
しかしご安心ください。結論から言うと、私程度の素人利用者が必要最低限しなければならないことは、
だけです。まあ、一文字の操作ですね(笑)。
アップデートのタイミングによっては、最後に追記した、もう一手間が必要となるようです。
以下、詳細です。
私はと言えば、前回Mountain LionからYosemiteへのアップデートした時の経験、たくさんのページを読み漁り、perlのバージョンの違いのためにもう復活できないのではないかという不安に押しつぶされそうになった挙句に、設定ファイルの三行の修正で終わった経験から、
- 素人がローカルにWebサーバを立ち上げて利用している程度(かつてあった「Web共有」を使っているレベル)なら、そんな面倒なはずはない
という確信を持ちました。
この範囲であれば、FSwikiをMac上で利用するために知っておいた方がいいだろう最低限知識は、
- OSXで使われるWebサーバは、apacheである
ことくらいです。まあ、FSwikiはperlで書かれているということは知っておいた方がいいとは思いますが、perlのバージョンが云々と言うことで迷うくらいなら知らない方がいいと思います。実際、FSwikiを普通に使う範囲で、perlのバージョンは問題になりませんでした。
Mac OSXでは、OSのアップデートに伴って、このapacheの設定ファイルが上書き更新されるのですが、その初期設定がCGIの利用には親切な設定になっていないことが、私のような素人にとってトラブルの種になっているだけです。
El Capitanの場合、
- /etc/apache2/にあるapacheの設定ファイル、httpd.confの中の一行を変更
すれば、元どおりFSwikiが使えるようになります。その一行は157行目
- #LoadModule cgi_module libexec/apache2/mod_cgi.so
です。エディタで、この#を取り去って
- LoadModule cgi_module libexec/apache2/mod_cgi.so
とすれば、それで終了です。手順としては、sudoを使って
- /etc/appache2/の下にbackupなどの名前でフォルダを作成し、httpd.confをコピーしてバックアップする
- chmodを使って、httpd.confの内容を変更できるようにファイル属性を変える
- エディタで、上記の修正をする
- apacheをリスタートする
で終わりです。
ターミナルでのコマンド入力だと、
- cd /etc/apache2/
- sudo mkdir backup
- cp httpd.conf backup
- sudo chmod 777 httpd.conf
- vi httpd.conf ←エディタで編集です。viでなく慣れたエディタでOKです。
- sudo apachectl restart
が最低限でしょうか。私の場合は、5.は、httpd.confを自分のホームディレクトリにコピーして、そこでmiエディタで修正したものをコピーで上書きする形で戻しました。
こんな感じです:
- cp httpd.conf /Users/(自分のアカウント名)/
- miで、自分のホームにコピーされたhttpd.confを編集
- cp /Users/自分のアカウント名)/httpd.conf .
-----------------------------
この修正の意味は、apacheにCGIを動かすモジュール
(mod_cgi.so)を読み込むよう指示をすることです。
#LoadModule perl_module /usr/libexec/apache2/mod_perl.soが、httpd.confから
消えていて、かつapacheのライブラリにmod_perl.soがないということは、El Capitanに用意されているapacheはperlのモジュールを読み込んだものと考えてよいと思います。
もっと詳しくて体系的なページは、
ここでしょうか。
-----------------------------
アップデートのタイミングによってはもう一手間必要になります。
上の対処をしても動かない時は、ターミナルでアパッチの設定チェック(sudo apachectl congiftest)を実行して、
AH00526: Syntax error on line 20 of /private/etc/apache2/extra/httpd-mpm.conf: Invalid command 'LockFile', perhaps misspelled or defined by a module not included in the server configuration
というエラーが出たら、/etc/apache2/extra/httpd-mpm.confの20行目をコメントアウトする必要があります。