- 締切済み
送信フォームが動きません・・・どこが違ってますか?
・http://www.ahref.org/cgi/formmailer/を使用しています。 ・メールアドレスは実際には自分のアドレスを設定しており、cgiのファイル名は、form.cgiです。 ・送信ボタンを押すと、確認画面がでず、メールも送信されず、画面がform.cgiのソースが表示された画面に切り替わってしまいます。 以上よろしくお願いします。 cgi初心者なので、不足な情報があるかと思いますので、 ぜひお知らせください。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- skoma
- ベストアンサー率52% (9/17)
>No2 仮のサーバとは具体的にどのようなサーバでしょうか? あなたのPCにインストールしているテスト用のWebサーバのことでしょうか?もしそうでしたら、その種類を教えていただけますか。ApacheやIISなど >ディレクトリ以下はCGIとして扱うというような設定 言葉が足りずにすいません。 Webサーバは、HTMLファイルの場合ブラウザに対しそのファイルの内容を表示します。 CGIの場合は、Webサーバはそのファイルを実行し、その結果をブラウザに表示するのです。 Webサーバは普通はブラウザからの要求に対しファイルの内容を表示します(HTMLファイルとして扱う)。CGIとして実行したい場合には、そのファイルがCGIですよ、ということをWebサーバに教えてあげる必要があります。 その方法として、あるディレクトリ以下はCGIとして扱うとか、ある拡張子のファイル(.cgiや.pl)はCGIとして扱うのような設定をWebサーバに行う必要があります。 プロバイダーのホームページであれば、CGIをアップする場所や手順が決められていると思います。
- hit-ok
- ベストアンサー率20% (13/64)
No.1です。 先ず、自作したホームページをサーバーにアップしてください(biglobeとか@niftyとかのレンタルサーバですよね?)。 アップに関する注意事項や仕方はプロバイダのホームページに載っているはずです(どのディレクリにいれろとか)。または、サポート担当に電話で聞いてもokです。 ホームページ作成はWebサーバーにアップしないと確認できないことも多いですよ。
- skoma
- ベストアンサー率52% (9/17)
CGIというのは、Webサーバー上のCGIを実行できるディレクトリにファイルを保存する必要があります。 Webサーバというのは、ファイルの拡張子(.cgiや.html)でCGIかHTMLかの判断をしているのではなく、ここのディレクトリ以下はCGIとして扱うというような設定をWebサーバに行い、そこに配置する必要があります。 今回のケースではform.cgiがHTMLとして扱われてしまっていますので、プログラムが実行されるのではなく内容が表示されてしまっているのです。 Webサーバの環境はどのようになっているのでしょうか?それが分かれば、もう少し適切なアドバイスが出来るかもしれません。
- hit-ok
- ベストアンサー率20% (13/64)
Webサーバーにアップして、その結果うまく行かない、と言うことですか? サーバーにアップしないとCGIは動かないと思いますが... アップしてもダメであれば、プロバイダのHPにCGIの使い方が掲載されていると思いますのでそれを参考にしてみては如何でしょうか。
補足
早速のアドバイスありがとうございます。 初心者なのでとんちんかんなことを申し上げると思いますがすみません。 先ほどの状態は、DreamweaverMX2004でフォームを作成して、ブラウザでプレビューした際のことです。ではCGIのテストはサーバにアップしないとCGIのテストは出来ないのでしょうか。
補足
アドバイスありがとうございます。 >今回のケースではform.cgiがHTMLとして扱われてしまっていますので 知識が浅いのでやり方がおかしかったかもしれませんが、 ソースの内容を見ていただきたかったので、htmファイルとして仮のサーバにアップしました。実際にはform.cgiという名前でindex01.htmと同階層に入っています。 >CGIというのは、Webサーバー上のCGIを実行できるディレクトリにファイルを保存する必要があります。 ということは、フォームのhtmと同階層に置いているのは 間違いだったでしょうか。 >ここのディレクトリ以下はCGIとして扱うというような設定をWebサーバに行い、そこに配置する必要があります。 すみませんがこれの意味をもう少し初心者向けに教えてください。 >Webサーバの環境はどのようになっているのでしょうか? これは何をお知らせすればよいのでしょうか。