BBS 過去ログ No.0008に戻る
タイトル:
SSIがうまく動かない…
記事No:
2429
投稿日: 2004/07/18(Sun) 23:17
投稿者:
AKI
<
aki_int@plum.freemail.ne.jp>
URL:
http://akim.dip.jp/201.txt
はじめまして、AKIと申します。
最初の投稿が質問で恐縮なのですが、OSを再インストールしたところ、以前動いていたSSI(といっても単なるアクセスカウンタなんですが)がまともに動かなくなってしまいました。
SSIとしては動作しているようで、<!--#exec cmd="echo aaa"-->とやればaaaと表示されます。
しかし、自作のPerlスクリプトを
<!--#exec cmd="./cgi-bin/stc100/stc100.cgi count"-->
として実行しようとすると、何も表示されません。
/var/log/httpd/error_log
には、
/bin/sh: -c: line 1: unexpected EOF while looking for matching ``'
/bin/sh: -c: line 2: syntax error: unexpected end of file
とのこっているので、スクリプトのどこか(しかも最初のほう?)がおかしいのだろうとは思うのですが、
ターミナルから
$ ./cgi-bin/stc100/stc100.cgi count
と実行してやると、期待通りの動きをするので、原因がまったく分からず、行き詰っています。
環境は
VineLinux2.6r4(最小インストール→apt-get update, apt-get upgrade)
+Apache/1.3.27 (Unix) (Vine/Linux)
です。ほかにいくつかパッケージはインストールしましたが、関係ありそうなものは↑だけだとおもいます。
ではよろしくおねがいします。
# スクリプトの最初のほうを張っておきます。
# (最初の -- を取ると、Bad Interpreterといわれてターミナルからも実行できませんでした。)
#!/usr/bin/perl --
# 設定
$countfilename ="count.dat";
$lockfilename = "count.dat.lock";
$analysisfilename = "analysis.dat";
$datadir ="/data/data/aki/cgi-bin/stc100/"; #データディレクトリ。/で終わる。
# http://akim.dip.jp/201.txt に全スクリプトをおいてありますが、気まぐれでつけているサーバーなので見れないかもしれませんw
タイトル:
Re: SSIがうまく動かない…
記事No:
2431
投稿日: 2004/07/18(Sun) 23:45
投稿者:
まめ
> 最初の投稿が質問で恐縮なのですが、OSを再インストールしたところ、以前動いていたSSI(といっても単なるアクセスカウンタなんですが)がまともに動かなくなってしまいました。
以前動いていたSSIなのなら、今も動くはずだと思うんですが。
Apacheの設定(特にSSIに関する箇所)を以前と同じにしてありますか?
タイトル:
スクリプトがおかしい?
記事No:
2433
投稿日: 2004/07/19(Mon) 08:50
投稿者:
AKI
<
aki_int@plum.freemail.ne.jp>
URL:
http://akim.dip.jp/201.txt
> 以前動いていたSSIなのなら、今も動くはずだと思うんですが。
> Apacheの設定(特にSSIに関する箇所)を以前と同じにしてあり
ますか?
SSI自体は動作しているようです。
簡単なスクリプト
#!/bin/sh
echo aaa
を<!--#exec cmd="./cgi-bin/test.sh"-->としてやればきちん
とaaaと表示されるので、Apacheの設定は間違っていないと思います。
また、以前でていたエラーメッセージですが、SHTML中のダブルクウォ
ートが一つシングルクウォートに知らないうちに化けていた(汗)ため
だと分かりました。
自分で(スクリプト中で)環境変数を与えてコンソールから実行する
と、問題なく動作しているように見えるのに、いざSSIで使おうとする
と、予期されない動作をします…
このようになる原因というと、どのようなものが考えられますか?
以前カレントディレクトリが違う、というのではまったことがありま
したが、今回はスクリプト中にディレクトリを(絶対パスで)指定する
ようにしちゃいましたし…
Copyright© Home Server Technical. All Right Reserved.