
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側に何か暗号化されたデータを暗号化前に戻すコードみたいなものが必要なのでしょうか
No.1ベストアンサー
- 回答日時:
httpsは、通信上(サーバーと端末)の間の仕様ですので、CGI自体はそのままで構いません。
但し、httpsにした場合、幾つかの「ファイルの転送」即ちアップロードやダウンロードで問題が発生するみたいです、詳しくは判りませんが^^;
なお、httpsを利用した場合、サーバー側に暗号化の余分な負担が掛かります。CGIはただでさえ負担が重い言語ですので、httpsの利用は必要最小限に留めた方が良いようです。
>CGI自体はそのままで構いません。
あぁよかった。CGIフォームの送信データをDBに落としたり、自動返信したりするシステムを何本も自作し動かしているので、また作り直しといわれたら涙ちょちょぎれます。
No.2
- 回答日時:
CGIをSSL環境下で使うときは、httpd.confに以下のオプションを追加しましょう。
(Apacheの場合の例)SSLOptions +StdEnvVars
これでSSL/TLSに関連した環境変数をエクスポートするようになります。
なお、通常の静的コンテンツの提供には意味がないので、このエクスポートはデフォルトではパフォーマンスの理由から無効になっています。
よって、通常、CGIやSSI等のリクエストだけのために使うことが推奨されます。
> CGIはただでさえ負担が重い言語ですので
突っ込ませていただくと、CGIはインターフェイスであって言語ではありません。
なので、Perl = CGIではありません。
CGIはCやRuby等Perl以外の言語でも作れます。
そして、負担が重いというのは全てに当てはまりません。
単純な動作をするものであればどうってことないですし、Perlのようなインタプリタ言語ではなく、Cのようなコンパイラ言語を使えば同じことをさせるものであった場合、コンパイラ言語の方が速いです。
よって、一概に「遅い」と言い切れるものではありません。
むっむずかしぃ!
>CGIをSSL環境下で使うときは、httpd.confに以下のオプションを追加しましょう。(Apacheの場合の例)
>SSLOptions +StdEnvVars
>これでSSL/TLSに関連した環境変数をエクスポートするようになります。
自分でサーバー立ててるわけじゃなく、使用するのがレンタルサーバーですので、そのサーバーのWebサーバーソフトのhttpd.confの書き換えなんてできるんですか?
新たな疑問が湧いてきたな・・・
>一概に「遅い」と言い切れるものではありません。
そんなに技術が無いので受信データ受けてCSVに書き込んでsendmailで返信したり位ですから、そんなに負担のかかるシステムじゃないのであんまりその点は気にしてません。
なにか処理系でループでデータをグルグル回したりしてませんので
>Cのようなコンパイラ言語を使えば同じことをさせるものであった場合、コンパイラ言語の方が速いです。
そりゃそうだろうな・・・でもレンタルサーバーでPerlやPHP以外にCが使えるすくないんですよね
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Strawberry Perl for Windows ...
-
INDIRECT 横に再度抽出したい
-
Perlのエラーについてご教授く...
-
bashスクリプト
-
perlで2次元配列をサブルーチ...
-
Perlの全角スペース 文字化け?
-
perl の open について教えてく...
-
Perl言語について。
-
ファイルをディレクトリ分配の...
-
アルファベットに付いて質問し...
-
#!/usr/bin/perlで書きだしたCG...
-
perlのflock関数でロックをかけ...
-
AI sisterとは、偽物の人ですか?
-
ファイルアイコンの左下に緑の□...
-
perlプログラミング 空白行削除
-
perlでリテラル値はメモリにど...
-
Perlで時間の計算
-
perlについて
-
perlのrequireの動き方について...
-
perlの構文でカンマの意味が分...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
スキルを高めたい日曜プログラ...
-
続・URLから任意の数字を取得し...
-
JAVAとperlはどっちが将来有望...
-
phpとperl
-
perl/tkとtcl/tkの違いを知りたい
-
例外処理のフローチャートの記...
-
「デバイスは PRN を初期化でき...
-
Excel VBAでリンク切れをチェッ...
-
Excel VBA 定義されたプロージ...
-
Application.OnKey:項目入力中...
-
Excel VBAで、ユーザーフォーム...
-
モジュールの最大数はいくつな...
-
グラフのX,Y座標を取得したい
-
VBA This Workbookモジュール...
-
ユーザー定義関数に#NAME?が返...
-
LCD ディスプレイを Raspberry ...
-
VBSがコンパイルエラーになりま...
-
Excel VBAで、ユーザーフォー...
-
VBAで旧字体を異字体に一括で変...
-
モジュールとクラスの違いって...
おすすめ情報