• 締切済み

CGIが実行されずにダウンロードのアラーとが出てしまう

いつもお世話になっています。 仕事で普段使わないCGIが絡んだのですが、サイト内検索のCGIで すでに動いているものをサーバののせかえでパスの変更を行った のですが、ワードを入れて検索すると、「ファイルのダウンロード」 のアラーとが出てしまい、検索できない状態です。 そのままファイルを開いても特段変わりはないのですが、 どうすれば実行されるようになるのでしょうか? どなたかご教授願います。 宜しくお願いいたします。

  • CGI
  • 回答数3
  • ありがとう数0

みんなの回答

  • gentaro
  • ベストアンサー率47% (105/221)
回答No.3

「ファイルのダウンロード」が出る場合はWebサーバーがCGIとして認識してないことがほとんどです。 .htaccessに AddType application/x-httpd-cgi .cgi を追加してもダメですか? サーバーの環境がわからないので、サーバー管理者に聞くのが一番ですが。

  • ralf124c
  • ベストアンサー率52% (232/446)
回答No.2

ダウンロードしようとしているのはCGIファイルでしょうか? もしそうならCGIファイルがバイナリモードでアップされているのではないでしょうか? ASCIIモードでアップしなおして見ればなおるかも。 「.htaccess」に関して書き方はいろいろ状況にもよりますが Options +ExecCGI でCGIが実行できると思います。

  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.1

よくわからない説明ですが、 そのCGIは、検索システムですか? 検索フォームはCGIからではなく、別のHTMLですか? そのフォームのaction先がそのCGIですか? サーバーのCGIの実行権限は与えられてますか? CGIが実行されたとき、HTTP応答ヘッダはきちんとtext/html等が出力されてますか? CGIが特定のディレクトリでないと実行できないようになってませんか?  上書きが可能なら、.htaccessで設定可能ですか?

mahimahi02
質問者

補足

ご回答ありがとうございます。 説明不足で申し訳ありません。 検索フォームのactionはpostで.cgiです。 ヘッダにはtext/htmlの記述もあります。 cgiのフォルダはサーバの仕様に合わせて /usr/bin/perl にあります。 格納場所も仕様通り、cgi-bin以下に配置されています。 パーミッションも確認しました。 もし、.htaccessで変更すると、どのような記述になるのでしょうか?

関連するQ&A

  • CGIを使ったパスによるダウンロード

    現在,Dreamweaver CS5.5 (Mac版)を使ってウェブサイトを作成しています(OSはMac OS X 10.6.8で,サーバーはロリポップのレンタルサーバー)。 パスによるダウンロードフォームを設置しようと思いまして,こちらのサイト↓ http://www.kent-web.com/pwd/login.html で無料CGI(アクセス制限・簡易タイプ)を入手しました。 教えて!gooでのアドバイスも受けて,何とか配布サイトの指示通りには無事に設置できたのですが,その先がうまくいきません。 上記無料CGIはログインフォームで,パスを入力してボタンをクリックすると特定のファイルに飛ぶというものなのですが, このリンク先にzipファイルを置いても,それだけではダウンロードできないものなのでしょうか。 具体的には, 上記CGIのうち,init.cgiに $cf{secfile} = 'zipファイルの相対パス(例えば,./private/secret.zip)'; と記述し,それをlogin.cgiに渡すようにしたのですが, それでは,パスを入力してボタンを押しても,大量の意味不明文字(文字化け)が出るだけで,zipがダウンロードされません。 ちなみに,zipファイルでなく,例えば画像ファイルにした場合には,ボタンを押すと,画像がブラウザ上で表示されます。 パスワードを入力し,ボタンを押すと,直接(途中にHTMLを噛ませたりしないで),設定しておいたzipファイルをダウンロードするようにしたいのですが,どなたかその方法をご存知の方がいらっしゃいましたら,ご教授願えると幸いです。

    • ベストアンサー
    • CGI
  • PHPが動いてCGIが動かない?

    PHPが動くサーバーで、CGIを動かそうとしたら、動きません。 ダウンロードがはじまるのでもなく、サーバー上にファイルはあるのに、ファイルが見つかりません、となります。 これってどういうことですか? こちら側のパスの指定が間違っているのでしょうか? かなり困っています!

    • 締切済み
    • PHP
  • CGIが実行されないのはナゼ?

    OS:WindowsXP HomeEdition Service vack2 プロバイダ:ファーストサーバ(ギガントシリーズ) Movable Type3.33を設定中なんですが、ftpで転送されたcgiを属性755に変更したのですが、あるファイル(mt.cgi)を実行したら、小さなウィンドウが開いて、”このファイルを開くか、または保存しますか”と聞いてきます。 試しに別のパソコン(Windows2000)で実行したところ、エラーは出るのですが、XPの時のような、”このファイルを開くか、または保存しますか”とは聞いて来ず、 ”Got an error : データベースの接続の設定に誤りがあります:ファイル /path/to/sqlite/databese/file”を開けません : No such file or directory"とちゃんとエラーメッセージは、出ます。 エラー自体は、こちらの設定ミスだと思うのですが、XPで、ちゃんと実行エラーを表示されないのは何か設定の仕方がおかしいのでしょうか?ご存知の方が、ご回答宜しくお願いします。

  • CGI実行に必要なソフト

    サーバーでCGIを実行するには、どのようなソフトが必要なんですか? あるページでダウンロードしたCGIを実行できないので・・・・

    • ベストアンサー
    • CGI
  • cgiファイルがダウンロードできません

    昨日は、cgiファイルをダウンロードして、デスクトップに保存できたのですが、 今日はダウンロードできなくなりました。 普通、ページの「ダウンロードする」を選ぶと、 「このフォルダを開く」か、「保存する」という表示が出てきて選べると思うのですが、その選択画面も出てきません。 エラーメッセージは、 「指定されたデバイス、パス、またはファイルのアクセスは拒否されました。」 となってしまいます。 どなたかご教授お願いいたします。

  • 自前サーバでCGIを~

     まずはLAN内だけで掲示板などのCGIを実行できるようにしてみよう、ということでApacheを使ってCGIの設定をしているんですが、ブラウザからCGIファイルを起動してもInternal Server Errorと出てしまいます。よってそれ以前ということで・・・  コマンドラインから「perl test.cgi」のようにCGIファイルを実行してみるとちゃんと動作するんですが、「type -a perl」で検索したフルパスをそのままCGIファイルに「#!/usr/bin/perl」などのように書いても、ファイルがコマンド化されてくれません。でも、perlの実行ファイルは存在していました。  これは、どうすれば解決できるのでしょうか?

  • CGIのダウンロードで

    掲示板などのCGIをダウンロードしようと思ってます。 CGIをダウンロードした後、Perlのパスをテキストエディターで変更して、その後、FTPでダウンロードしたファイルをそのままアップロードした後に詳しい詳細を変更すれば問題なく動きますか? また、注意すべき点などはありませんか? 因みにPerlのバージョンは5.006で、FTPソフトはFFTPを使ってます。 初心者ですから、どうぞ宜しくお願いします。

  • 別サーバーのcgiを実行させる

    あるサーバーで動作しているcgiスクリプトから、別のサーバーに置いてあるcgiスクリプトを実行させる方法はあるでしょうか? require 'http://…/…/test.cgi'; としても実行することは出来ませんでした。 googleで検索したところrequireではURL指定ができないと解説しているサイトがありましたので、requireを使わずに、(CGI.pm等の標準モジュール(?))なども使わないで他のサーバーに設置したcgiを動作させる方法があれば、教えていただきたいです。

    • ベストアンサー
    • CGI
  • PHPをCGIとして実行する方法

    PHPをCGIとして実行する方法 現在PHP(モジュール版)にて開発を行っているのですが、 仕様上.htaccessを使用してcgi-binディレクトリ内にあるphpファイルをCGIとして 実行しなければならなくなりました。 下記の記述方法だと500エラーが発生してしまい、大変困っています。 <Directory "/usr/~(任意のcgi-binディレクトリのフルパス)~/cgi-bin"> AddType application/x-httpd-cgi .php </Directory> 因みに.htaccessはcgi-binディレクトリの1階層上に設置しています。 単に「AddType application/x-httpd-cgi .php」を記述する分には誤作動は起さないのですが、出来れば指定のディレクトリ内だけで指定したいと考えています。 もし思い当たる点がありましたら、ご教授お願い致します。 下記に環境を記しておきます。 【環境情報】 OS:FreeBSD 6.2(レンタルサーバ) PHP:5.2.4

    • ベストアンサー
    • PHP
  • x.htmlが呼ばれたらx.cgiを実行

    するように(実行結果は表示させないでファイルに格納) するにはx.htmlにどのようにx.cgiのパスを指定したらいいでしょうか? <imag src="x.cgiのパス"/> を置くとブラウザに「読み取りミス」画像が表示されます 何も表示させない場合にはどうしたらいいのでしょうか?

    • ベストアンサー
    • CGI