CMONOSをCentOS5サーバのインストール直後の状態のところに実験インストールしてみました。
しかしながらエラーが出て動作させることができませんでしたので、手順のうち間違い及び確認事項があればご指導いただけないでしょうか?
以下に実行手順とエラーを書いていきます。
どうぞよろしくお願いいたします。
前提、sshにてログイン。
rootのホームディレクトリから作業スタート。
# mkdir download
# cd download
# wget https://cmonos.jp/download/CMONOS_JP.tgz
# tar zxvf CMONOS_JP.tgz
# mv CMONOS_JP_20090308 /var/www/CMONOS
# vi /etc/httpd/conf.d/cmonos.conf
Alias /cmonos "/var/www/CMONOS/home/htdocs"
SetHandler perl-script
PerlResponseHandler ModPerl::Registry
PerlOptions +ParseHeaders
Options ALL
AllowOverride ALL
Order allow,deny
Allow from all
# yum install ImageMagick-perl
LWP-UserAgentはインストールせず
http://xxx.xxx.xxx.xxx/cmonos/cgi/servercheck.cgi へアクセス 実行される
# vi /var/www/CMONOS/home/cgi-data/lib/env.pl 編集
# diff CMONOS_JP_20090308/home/cgi-data/lib/env.pl /var/www/CMONOS/home/cgi-data/lib/env.pl
64,66c64,66
< $file_mode = 0604;
< $dir_mode = 0705;
< $cgi_file_mode = 0705;
#$file_mode = 0604;#$dir_mode = 0705;#$cgi_file_mode = 0705;
69,71c69,71
< #$file_mode = 0644;
< #$dir_mode = 0755;
< #$cgi_file_mode = 0755;
$file_mode = 0644;$dir_mode = 0755;$cgi_file_mode = 0755;
http://xxx.xxx.xxx.xxx/cmonos/cgi/setup/start.cgi へアクセス エラー発生
[error] Can't locate CMONOS/CGI_Lib/Common.pm in @INC (@INC contains: ../../../cgi-data/lib /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.7/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.6/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl/5.8.7 /usr/lib/perl5/site_perl/5.8.6 /usr/lib/perl5/site_perl/5.8.5 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.7/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.6/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl/5.8.7 /usr/lib/perl5/vendor_perl/5.8.6 /usr/lib/perl5/vendor_perl/5.8.5 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.8/i386-linux-thread-multi /usr/lib/perl5/5.8.8 . /etc/httpd) at /var/www/CMONOS/home/htdocs/cgi/setup/start.cgi line 22.\nBEGIN failed--compilation aborted at /var/www/CMONOS/home/htdocs/cgi/setup/start.cgi line 22.\n
なぜかperlスクリプトが相対パスにあるファイルを見つけられないようです。
OSから見ると
/var/www/CMONOS/home/cgi-data
/var/www/CMONOS/home/htdocs
で問題ないはずなのですが...
start.cgiのエラー部分を/からのパスで書くと一部動作したように見えフォームの一部が表示されますが、やはりinternal server errorがページ下部に表示されます。
どこをチェックしたらいいのでしょうか?
普段phpアプリの使用が多いので、perlのcgiの設定に慣れていないため、パスの書き換えとかapacheのoptionsの書き換えなどをいろいろ試したのですが、解決できませんでした。
よろしくお願いいたします。
この度は、CMONOS.JP をテストしていただきありがとうございます。
CMONOS.JP は、modperl 環境には対応しておりません。必要なライブラリが見つからないのは、modperl 環境においては、カレントディレクトリが CGI ファイルのあるディレクトリではなく、Apache 自身のディレクトリとなってしまうためです。
CGI を動作させるには次のように設定します。
AddHandler cgi-script .cgi
Options ExecCGI Includes FollowSymLinks
#下記は SSI を有効にするための設定
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
なお、suExec を有効にして Apache を再構築すると、CGIがユーザー権限で動作しますので、CMONOS.JP の全ての機能を利用することができます。
以上参考になりましたら幸いですm(_ _)m。
ご回答ありがとうございました。
納得いたしました。動かないわけですねorz
早速試してみたいと思います。
返信ありがとうございます。また何かお気づきの点がありましたら、ぜひご指摘ください。CMONOS.JP がいつか何かのお役に立てることを願っておりますm(_ _)m。