重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

SSLというものを使ったことがない者です。
下記の様な送信フォームを
URLをhttps://****.htmlという名前にすると暗号化されてデータが送られるそうですが

========= 送信フォーム ============
<form action="****.cgi" metod="POST">
<input type=text name="koumoku">
<input type=submit value="送信">
</form>

これを受ける側のCGIは、従来どおり

======== 受側CGIファイル ========
#! /usr/local/bin/perl
require "./cgi-lib.pl";
&ReadParse();

$koumoku=$in{'koumoku'};

とすれば、koumokuで送信されたデータは、勝手に暗号化前に戻されて$koumokuに入るものなのでしょうか
それともCGI側に何か暗号化されたデータを暗号化前に戻すコードみたいなものが必要なのでしょうか

A 回答 (2件)

httpsは、通信上(サーバーと端末)の間の仕様ですので、CGI自体はそのままで構いません。



但し、httpsにした場合、幾つかの「ファイルの転送」即ちアップロードやダウンロードで問題が発生するみたいです、詳しくは判りませんが^^;

なお、httpsを利用した場合、サーバー側に暗号化の余分な負担が掛かります。CGIはただでさえ負担が重い言語ですので、httpsの利用は必要最小限に留めた方が良いようです。
    • good
    • 0
この回答へのお礼

>CGI自体はそのままで構いません。

あぁよかった。CGIフォームの送信データをDBに落としたり、自動返信したりするシステムを何本も自作し動かしているので、また作り直しといわれたら涙ちょちょぎれます。

お礼日時:2005/02/24 09:52

CGIをSSL環境下で使うときは、httpd.confに以下のオプションを追加しましょう。

(Apacheの場合の例)

SSLOptions +StdEnvVars

これでSSL/TLSに関連した環境変数をエクスポートするようになります。
なお、通常の静的コンテンツの提供には意味がないので、このエクスポートはデフォルトではパフォーマンスの理由から無効になっています。
よって、通常、CGIやSSI等のリクエストだけのために使うことが推奨されます。

> CGIはただでさえ負担が重い言語ですので

突っ込ませていただくと、CGIはインターフェイスであって言語ではありません。
なので、Perl = CGIではありません。
CGIはCやRuby等Perl以外の言語でも作れます。
そして、負担が重いというのは全てに当てはまりません。
単純な動作をするものであればどうってことないですし、Perlのようなインタプリタ言語ではなく、Cのようなコンパイラ言語を使えば同じことをさせるものであった場合、コンパイラ言語の方が速いです。
よって、一概に「遅い」と言い切れるものではありません。
    • good
    • 0
この回答へのお礼

むっむずかしぃ!

>CGIをSSL環境下で使うときは、httpd.confに以下のオプションを追加しましょう。(Apacheの場合の例)
>SSLOptions +StdEnvVars
>これでSSL/TLSに関連した環境変数をエクスポートするようになります。

自分でサーバー立ててるわけじゃなく、使用するのがレンタルサーバーですので、そのサーバーのWebサーバーソフトのhttpd.confの書き換えなんてできるんですか?
新たな疑問が湧いてきたな・・・

>一概に「遅い」と言い切れるものではありません。

そんなに技術が無いので受信データ受けてCSVに書き込んでsendmailで返信したり位ですから、そんなに負担のかかるシステムじゃないのであんまりその点は気にしてません。
なにか処理系でループでデータをグルグル回したりしてませんので

>Cのようなコンパイラ言語を使えば同じことをさせるものであった場合、コンパイラ言語の方が速いです。

そりゃそうだろうな・・・でもレンタルサーバーでPerlやPHP以外にCが使えるすくないんですよね

ありがとうございました。

お礼日時:2005/02/24 11:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!