Webのブラウザ-サーバ間のセッションですが、ブラウザのストップボタンを
押下した場合、Webサーバは自身が行っている処理を停止してくれるので
しょうか。それともブラウザのストップには関係なく、サーバで実行している
処理は継続されるのでしょうか。

例えば、ブラウザからDBへの検索リクエストを出し、サーバ上のプログラムが
DB接続をし検索を行っている間に、ブラウザのストップボタンを押下すると、
サーバ側の検索処理はどのようになるでしょうか。検索は中断されるのですか。
それとも、そのまま実行されるのでしょうか。そのまま実行されるとすると、
クライアント側で、送信ボタンが何度も押された場合、サーバ側で無駄な
プロセスが複数走るばかりか、必要な新規のリクエストも受け付けることが
できなく思うのですが、この場合どのような対処を行う必要があるのでしょうか。

環境は、Oracle8、iPlanet WebServer、Servletを使用しています。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

ブラウザの中止とは、サーバー上の処理を中止する物では無く単純にブラウザを現在の状態で中止処理を行うと言う者です。



なのでサーバー上で処理を行っている物は中止できません。

詳しく言うと例えばCGIを開いた場合
ブラウザから1というデータを送ったとします。
サーバーが1を受け取る前に中止をすればサーバーでは何も処理を行いませんがサーバーが受け取った後に中止を行った場合はサーバーは処理を行い単純に処理を行った結果がブラウザに返って来ないと言う事です。

ブラウザとサーバーはネット上では繋がっていますがソフトとしては繋がっていません(情報を渡し情報を受けるだけ)ので中止や更新等は単純に情報の渡しを止めたり受け取りを止めたり、再度データのやり取りを行うだけのものです。

参考になるか分かりませんが一応ご回答しておきます。
    • good
    • 0

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

このQ&Aと関連する良く見られている質問

QCGIで ブラウザの更新ボタンの設定

たびたびですが教えてください。
CGIで画面入力させてますが、入力後空白表示された現で、
ブラウザの更新ボタンを押すと、前回画面入力した値が再度
読み込まれてしまいます。
解消法とかはないのでしょうか?

Aベストアンサー

CGIで入力されたデータを処理したあと、Locationヘッダで別のURLに移動させれば、表示されたページをリロードしても、フォームで入力された内容は再送信されません。

たいていの掲示板スクリプトでも同様の処理を行っていると思うので、参考にしてみてください。

参考URL:http://www.google.com/search?hl=ja&safe=off&q=Location+%83w%83b%83_+cgi&lr=

Qブラウザの「戻る」ボタンを押した時にリロードさせる

ブラウザの「戻る」ボタンを押して前のページに戻った時に1回だけページを
リロードさせたいのですが、そのようなCGIをPerlで作れないでしょうか。

宜しくお願い致します。

Aベストアンサー

> METAタグのPRAGMAは使ってみたのですが、どうも上手くいきませんでした。
ブラウザによって聞かないものもありますが、もしも表示させるページがCGIやPHPならページ表示の前にHTTPヘッダを使ってやってみてはどうでしょうか?
perlなら

1.Pragmaの場合
print "Content-type: text/html", "\n";
print "Pragma: no-cache", "\n\n";

2.Expiresの場合
print "Content-type: text/html", "\n";
print "Expires: Friday, 17-Dec-01 00:00:00 GMT", "\n\n";## 古い日付を指定

こんな感じ

Q空メールを送信すると、サーバ側で自動で返信する機能

タイトルの内容に関して質問させて頂きます。

本当に何も分かっていない状態での質問となりますので、不愉快な気持ちにさせるかもしれませんが申し訳ございません。

質問ですが、よく携帯サイトの登録などで使用されている、空メールを送り、何かしらのプログラムが起動して、自動でメールが返ってくるというシステムを作りたいと思っています。


一般的な、ボタンを押せば処理が実行するといったプログラムは作成したことがあるのですが、今回のようなメールを送ると起動するといったプログラムは初めてのため、何から手を付けてよいのかまったくわからない状態で困っています。

自分なりに調べたところ、CGIを使用するのではないかと思っているのですが、CGIの知識も乏しく、サイトによっても記述内容が違うため、今回の件に関してはどの方法で参考すればいいのか分からないでいます。

「今回の件に関してはこのサイトを参考にすればいいよ」といったレベルでも構わないので教えて頂けると幸いです。


まだまだ初心者のため質問内容自体おかしな部分や、説明不足の部分があるかとは思いますが、良ければ分かる範囲でよろしいので回答を宜しくお願い致します。

タイトルの内容に関して質問させて頂きます。

本当に何も分かっていない状態での質問となりますので、不愉快な気持ちにさせるかもしれませんが申し訳ございません。

質問ですが、よく携帯サイトの登録などで使用されている、空メールを送り、何かしらのプログラムが起動して、自動でメールが返ってくるというシステムを作りたいと思っています。


一般的な、ボタンを押せば処理が実行するといったプログラムは作成したことがあるのですが、今回のようなメールを送ると起動するといったプログラムは初めてのため...続きを読む

Aベストアンサー

メールに反応してプログラムが動けばいいのでCGIとは関係ないです。

一般的に使われる方法としては、簡単に言えば下記の通りです。
1.メールサーバのaliases機能(または.forward機能)を使用して、受信したメールをプログラムに渡す。
2.渡されたプログラムはメールデータから送信者情報を取得し、メールを返信する。

使用するプログラムはperlでもpythonでもシェルでも何でも得意なもので構いません。

QCGIをサーバを通さずにブラウザに表示させるには?

ハードディスク上のCGIファイルをクリックすると、テキストとして表示されると思いますが、
CGIファイルをサーバにアップしないで、CGIを表示するにはどうすればいいのでしょうか。

ご存知の方回答よろしくお願いいたします。

Aベストアンサー

自分のパソコンをHTTPサーバにするフリーソフトがあります。
公式HPがありますので設定方法はそちらを参考にしてください。

参考URL:http://www.st.rim.or.jp/~nakata/

Q携帯(au)の「ブラウザ履歴」を封じ、サーバアクセスさせる方法

モバイルサイトのCGIを提供していますが、
au 端末には「ブラウザ履歴」として
一度アクセスしたURLは新たな通信を行わず、
メモリに溜めた以前にアクセスしたときの画面を
表示してしまいます。
CGIで、ユーザ入力によって動的に表示結果を
変えることをしているのですが、
通信にいかないので、古い結果を表示されてしまいます。
必ずサーバアクセスにいかせる方法など、
何か対策はありませんでしょうか。

Aベストアンサー

キャッシュ関係といったらHTTPヘッダのPragma、Cache-Control、Expiresあたりかな?
携帯だとMETAタグは無視される可能性ありなので、HTTPヘッダとして出力するのがよいかと。
http://www.tohoho-web.com/wwwxx008.htm

あと、ちょっとしたテクニックとしてURLを毎回変更するというのもあります。
たとえば↓みたいに無害なパラメータとしてtimeを仕込むとか。
http://www.***.com/hoge.cgi?1138983203

今回のケースだと「トップへ戻る」のリンクにパラメータを仕込むことになります。
ただし、お気に入りや他サイトのリンクから訪問された場合は考慮する必要があるでしょうね。
この場合は、Locationヘッダで新たなパラメータ付きURLに飛ばせば回避できるかも。

(AUは持ってないので、確認しているわけではありませんけど)


このカテゴリの人気Q&Aランキング

おすすめ情報