webに検索エンジン機能を付けようと思いいmsearchという検索cgiを入れたのですが、apacheサーバだとうまく動いてくれるのですが、iis(var4)だとエラーがでて動いてくれません。
(エラーの内容はSyntax errorとExecution of aborted dueto compilation errorsだったと思います)
UNIX系webサーバで動いてiisで動かないCGIというのは存在するのでしょうか?
また、あるとしたら何が原因で、対処法はあるのでしょうか?
非常に困っていますどなたか知恵をお貸し下さい。
お願いします。
msearch:http://www.kiteya.net/script/msearch/
No.7ベストアンサー
- 回答日時:
msearch少し見てみました。
すみません、confi_datってPerlのファイルじゃなくて独自フォーマットの設定ファイルでした。
ですから、perl -cでエラーが出るのは当たり前でした。
申し訳ないです。
# こういう方法は珍しいですね・・・
となると、話が戻ってしまうのですが
改行コードとか、Perlへのパスは問題ないですか?
これ、UNIX用に作られてるみたいなので改行コードがCR LFですよね。
この回答への補足
ぐぐってる間にさっそくレスありがとうございます。
perlへのパス(#! /bin/perlみたいなヤツですよね?)は他のテスト用のcgiで動作しているので問題ないようにおもえますが....。
ちなみにこんなのでテストしてみました。↓
http://www.sotechsha.co.jp/yutaka/arc/chap2/test …
あと改行コードというのはエンコーディングできるテキストエディタでs-jis保存すればよいのですかね?
今すぐIISで試したいのですが、手元にIISサーバがなく、ある程度原因を掴んでからIISサーバのある所へ出向こうと思っているのです。なので今すぐには試せません。すいません。
No.9
- 回答日時:
すみません、外出していたもので返信が遅れました。
改行コードと漢字コードは違いますよ。
Windowsでしたら秀丸で開いてEUCのCR+LFで保存してください。
後は、IISのログを確認してみたらどうでしょうか?
それが手っ取り早いんですが。
毎度レスして頂き有り難う御座います。
やっぱりEUCとCR+LFがかなーりあやしいという結論に達しました。
秀丸はシェアなのでフリーでなにかいいテキストエディタを探してそいつでいじりながらやってみたいと思います。
IISもログとれるんですか?
調べてみます。
長長とお付き合いくださってありがとうございました。
いったん締め切ります。
またわからなくなったらよろしくお願いします。
No.8
- 回答日時:
間違えました。
UNIX用なのでLFですね。
WindowsがCR LFです。
でも、perl -cでエラーでないという事は改行コードは問題ないのかな?
後はやはり考えられるのは行頭のPerlへのパスなのですが・・・
この回答への補足
整理すると
1.Perlのパス:他のcgiで動いたので多分あってる。
2.改行コード:EUC版とs-jis版の両方を用意してみる。
3.unixで使えてwinで使えない関数があってそれを使っている:ぐぐっても具体的にflock以外どの関数がだめなのかわからないです。
こんな感じでしょうか?
No.5
- 回答日時:
set?
お恥ずかしい事に始めて見ました。
> set $logencoding=shift_jis
これを、
> $logencoding = 'shift_jis';
にしたらどうですか?
この回答への補足
光速レスポンス有り難う御座います。
アドバイスの通り変えてみて、perl -cしてみましたが、エラーは変わりませんでした。
私もsetなんて初めて見ました。
No.4
- 回答日時:
関係大有りです。
本体から読み込むファイルは全て関係します。
エラー内容から何処でエラーになってるかわかりませんか?
この回答への補足
関係大有りですか(汗。
エラーはこんな感じです。
Semicolon seems to be missing at config.dat line46.
synax error at config.dat line 47,near "set"
bareword found where operator expected at config.dat line 116,near ""Content-type" content"
(Missing operator before content?)
Unrecognized character \214 at config.dat line 118
となっていてます。
47行目付近は
# ログファイルの漢字コード(デフォルト=euc-jp)
#set $logencoding=euc-jp
set $logencoding=shift_jis
#set $logencoding=iso-2022-jp
118行目付近は
# ↓の2行は変更しない方が無難
<meta http-equiv="Content-Type" content="text/html;charset=$$encoding$$">
<meta http-equiv="Content-Language" content="jp">
<title>検索結果 powered by msearch</title>
</head>
こんな感じです。
すいませんなにが原因だかさっぱりです。
エンコーディングの設定がおかしいってことですかね?
No.2
- 回答日時:
あ、すみません。
ActivePerlについて詳しく存じ上げませんが、Windows用のPerlにはUNIX用のPerlに実装されていない関数があったのは間違いないと思います。
msearchって、複数のスクリプトで構成されてますよね?
本体にエラーが出なくても外部ファイルがエラー起こしてる事はありませんか?
全てのファイルをperl -cでチェックしてみてください。
この回答への補足
ご相談にのっていただいて有り難う御座います。
すべてperl -cでチェックしてみました。
config.datという設定ファイルにエラーがでました。
これって設定ファイルなので関係ないですかね?
それとも関係大有りですか?
No.1
- 回答日時:
単純にWindowのPerlで実装されていない関数を使っているとか?
HTTPDよりもPerlに問題がある気がしますね。
perl -c でチェックしてみたらどうですか?
この回答への補足
IISにactiveperlをインストールをインストールしても実装されない関数があったりするのですか?
ちなみにインストールしたモノはAPI517e.EXEです。
補足ですがIISで他のcgi(テスト的な簡単なヤツ)は動きました。
perl -cでチェックしたのですが、エラーは出ませんでした。
なんだか乱文ですいません。
混乱気味です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- サーバー 別サーバに構築したApache+Tomcatの連携について 2 2023/03/06 23:23
- Perl Perlのエラーについてご教授ください。初心者です。 CGIを別サーバに移したところ、Perlのバー 5 2023/05/31 10:48
- CGI htmlからcgiを自動的に起動させたい 1 2023/02/21 19:39
- その他(プログラミング・Web制作) mariadbでのエラー 1 2022/11/15 12:31
- Google Drive Googleを使っていると勝手に1688検索が出てきて困ってます。 4 2022/05/29 11:08
- サーバー 無料のレンタルサーバで、スクレイピング(?)はできますか? 2 2022/05/07 10:09
- Visual Basic(VBA) Access VBAから使用したExcelプロセスを閉じる方法について 4 2022/06/08 17:50
- 美術・アート トレパク疑惑をかけられにくくするには ここ最近いわゆるトレパク警察のいいがかりがが厳しくなったようで 1 2023/08/21 09:59
- その他(SNS・コミュニケーションサービス) 【至急】Microsoft teamsログインできないループ・・ 3 2023/05/17 13:17
- その他(車) 夜中に車が振動を検知した場合に警戒するべきことは何かあるでしょうか? 夜中に車の振動検知アラームが作 2 2023/06/15 18:04
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ApacheでのCGIについての質問
-
EXCELファイルに誰がアクセスし...
-
《エクセルVBA》「他の人が該当...
-
CGIが実行されずにダウンロード...
-
URLに~/cgi-bin/~を隠す方法
-
XサーバーでCGIを使うには??
-
perlからphpを実行して結果を得...
-
ASPから既存のexcelブックを開...
-
NAMAZUでの文字化け
-
SFTPなどは使わないホームペー...
-
Ajax React Jqueryの位置づけと...
-
Perlプログラム上でアラートを表示
-
CGIのフォームをアップロードす...
-
safariでcgiが表示されず cgi...
-
Dreamweaver(ドリームウィーバ...
-
LAN内に接続されているPCをリ...
-
Linuxで拡張子は必要か
-
CGI掲示板のバーミッションにつ...
-
apacheのScriptAliasの記述につ...
-
VBAでサーバーにアクセスするに...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
CGIでのPC内でのテストで画面が...
-
ApacheでのCGIについての質問
-
cgiにアクセスしても画面が真っ白
-
文法はあってるのにサーバーエ...
-
HTTP 501未実装 エラーについて
-
perl:Insecure dependency in s...
-
CGIがうまくアップできない(50...
-
CGIの設置ができない
-
CGIをHTML(scriptタグ)上でうま...
-
EXCELファイルに誰がアクセスし...
-
《エクセルVBA》「他の人が該当...
-
URLに~/cgi-bin/~を隠す方法
-
VBAでサーバーにアクセスするに...
-
ラジオボタンのグループ化
-
ASPから既存のexcelブックを開...
-
VBScriptで、ファイルから任意...
-
CGIでソースがそのままでてしま...
-
FTPにて553エラー
-
VBAを使用して、外部サーバのフ...
-
perl 矢印演算子 -> の使い方
おすすめ情報