2ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

【PHP】セッションについて語ろう!【PHP】

1 :nobodyさん:03/09/24 19:31 ID:SnRvXmpI
ブラウザを閉じたらセッションの効果がなくなるのって、
ブラウザを閉じることでクッキーを消しているからなのですね。。
知らなかったよーーーーうわーーーん

2 :nobodyさん:03/09/24 19:32 ID:SnRvXmpI
いちいちセッションの機能使わなくてもよく考えたら、
IPをキーにして
普通につくれるじゃん。。
と思ったんんだけどどうう?

3 :nobodyさん:03/09/24 20:24 ID:???

1、スレ建て宣言…………1
2、開会の辞………………1
3、煽 り………………住人有志
4、逝ってよし……………1
5、御前もな………………住人有志
6、決意表明………………1
7、祝電披露………………1の家臣
8、来賓挨拶………………1の母親
9、来賓挨拶………………1の主治医
10、余興……………………もな踊り保存会
11、余興……………………1騙り太夫
12、送辞……………………大検
13、答辞……………………1
14、板歌斉唱………………全員
15、閉会の辞………………スレッドストッパー
16、終了宣言………………ひろゆき(削除忍代読)

4 :nobodyさん:03/09/24 22:39 ID:???
早くPHP5出ないかなぁ・・・。

5 :nobodyさん:03/09/24 22:40 ID:???
>>2
世の中の全端末にグローバルIPアドレスを付与出来るようになったのなら、それでも良いんだろうけどな。
NATやNAPT、プロキシサーバなんてもんが存在してしまうわけだ。


6 :sage:03/09/24 23:20 ID:???
>>5
それって何か問題ある?

7 :nobodyさん:03/09/24 23:48 ID:???
完全ではない、という問題。

8 :sage:03/09/25 00:23 ID:???
IPが変わる可能性がある、ということだよね。
変わらなければ問題はない。
けれども変わるから完全ではない。

でも用途によれば、問題なく利用できるよね。
使う目的によって、価値も変わってくるということだ。

9 :nobodyさん:03/09/25 00:41 ID:ZJmN+3d3
あげ

10 :nobodyさん:03/09/25 00:57 ID:???
セッションだけで1000まで逝くか?

11 :sage:03/09/25 02:07 ID:???
実際、、どうやったら、セッションの代わりになるんですか?
誰かおしえてちょんまげ

12 :nobodyさん:03/09/25 10:43 ID:???
IPが変わるとか、ブラウザの起動中だけとか言ってるけど
問題はその逆。
同じアドレスで複数の人がアクセスする可能性
同じクライアントで別人がアクセスする可能性

これがあるから、そのままでは使えない

13 :sage:03/09/25 17:47 ID:???
っていうかIPをキーにするんじゃなくて、クッキーをキーにしたら、
セッションと同じ機能をまるごとつくれるんじゃないか?


14 :sage:03/09/25 17:49 ID:???
>>12
同じクライアントで別人がアクセスする可能性

セッションでもそれが言える罠。

15 :nobodyさん:03/09/25 18:38 ID:???
なんだこのレベルの低さは

16 :nobodyさん:03/09/25 19:19 ID:???
>>14
いやだから、ログアウトやブラウザ閉じたら無効にする機能が必要

17 :sage:03/09/25 19:28 ID:???
>>16
クッキーの有効期限を0にしたら同じじゃないの?

18 :nobodyさん:03/09/25 19:43 ID:T3dpzMyk
イイヨーイイヨーあげ

19 :nobodyさん:03/09/25 21:11 ID:???
今どきクッキーでセッション管理してモナー

20 :nobodyさん:03/09/25 22:05 ID:???
>>8
アホか。

21 :nobodyさん:03/09/26 00:02 ID:???
オマエラなぁー、せめて↓くらいひととおり見ろよ、とりあえず。

PHP マニュアル:セッション処理関数(session)
http://php.planetmirror.com/manual/ja/ref.session.php

クッキー仕様書日本語訳
http://www.futomi.com/lecture/cookie/specification.html

22 :nobodyさん:03/09/27 07:48 ID:efY9iLPN
「ブラウザの戻るボタンで戻ってリロード→2重処理」
の回避策にsession使ってるけど邪道?

23 :nobodyさん:03/09/27 10:39 ID:???
>>22
素直にDBの主キーと比較するとかもあると思うけど、それほど邪道でもないかと。
複数ページでのつながりを確保するのが目的だからな。

24 :nobodyさん:03/09/27 20:12 ID:76PBBTl7
>>22
sessionでチェックという以前に、
遷移先画面にリダイレクトさせて、戻れなくするのが基本じゃないのかなぁ??



25 :直リン:03/09/27 20:13 ID:fK1fC/Fc
http://www.leverage.jp/bloom/qry/search.qry?function=first

26 :nobodyさん:03/09/27 20:30 ID:???
>>24
エラーが出たとき入力内容が一切合切消えるのは非常に迷惑。


27 :nobodyさん:03/09/28 22:13 ID:???
>>26
言ってる意味がよくわからん
それって、クライアント側のバッファ利用の問題で、二重投稿処理とは関係ない




28 :nobodyさん:03/09/28 22:40 ID:???
戻れなくして不便を強いられるより、そういう配慮をしてくれる
ところのほうが好感が持てますね

29 :nobodyさん:03/09/30 15:43 ID:2jXpVkA5
age

30 :nobodyさん:03/10/01 12:48 ID:???
php

31 :nobodyさん:03/10/01 18:29 ID:MgXABHqI
sesson

32 :nobodyさん:03/10/01 18:45 ID:H4wYblVH
Yahooのサイトでは、クッキーを使ったセッションで認証をやってて、クッキーが分かっても設定されてるクッキーが
Yahooドメインかどうかを判断して不正ができないようにしているみたいですが、これってクラックの危険性はありますか?
大丈夫そうだったらウチのサイトでも導入しようかと考えてます。

33 :nobodyさん:03/10/01 19:14 ID:???
危険が無いわけじゃないが、あちこちで使われている手法だし
対策はされている。

34 :nobodyさん:03/10/02 04:12 ID:jb4S4+xE
session_startってやらないと、$_SESSって呼び出せないの?

35 :nobodyさん:03/10/04 01:01 ID:8tSg2rjL
>>34
php.ini

36 :nobodyさん:03/10/04 07:34 ID:???
レベルの低さからしてネタスレか?

37 :nobodyさん:03/10/05 22:20 ID:???
>>36

>>2から10個ぐらいの書き込み見ると、完全にネタスレだと思ったけど、
その後、ベタっぽい低空飛行で展開されているようなので、俺も判断に苦
しんでる。

38 :age:03/10/11 00:19 ID:???
>>22,26,28,33
などは、典型だが、良い子は、まねしないでね。晒し上げ。

39 :nobodyさん:03/10/11 00:23 ID:???
根拠を書かない>>38を晒しあげ

40 :nobodyさん:03/10/11 00:39 ID:???
phpマニュアルのセッション関数(セキュリティ部分)を抜粋してみたYO。

------------------------------------------------------------------------------
セッションとセキュリティ
外部リンク: Session fixation

セッションモジュールは、セッションに保存した情報を見ることができるのが
そのセッションを作成したユーザーだけであることを保証することができません。

セッションの完全性を積極的に守るには、そのセッションに 紐づく値に応じた追加措置が必要です。
セッションに運ばれるデータの重要性を評価し、必要な保護策を講じて下さい。
これには通常、お金があかり、ユーザの利便性を損なうことになります。例えば、簡単な
社会工学的な策略からユーザを守るためには、 session.use_only_cookiesを有効にして下さい。
この場合、ユーザ側でクッキーは無条件に有効となっている必要があり ます。そうでない場合、
セッションは動作しません。

存在するセッションIDが第三者に洩れる手順は何種類かあります。
洩れたセッションIDにより、第三者が特定のIDに関連する全てのリソースにアクセスできるように
なります。まず、セッションIDがURLにより伝 送される場合です。外部サイトにリンクを張っている場合、
外部サイト のreferrerログにセッションIDを含むURLが保存される可能性があります。
第二に、よりアクティブな攻撃者がネットワークのトラフィックをモニターしている可能性があります。
セッションIDが暗号化されていない場合、セッションIDはネットワーク上を平文テキストで伝送されます。
解決策はサーバ上にSSLを実装し、確実にユーザに適用することです。
-------------------------------------------------------------------------------

41 :nobodyさん:03/10/11 08:32 ID:???
>>40
で?
そんな分かりきった事をのっけて何が言いたいの??

42 :nobodyさん:03/10/11 10:46 ID:f+KUGOmH
>>41
初心者には分かりきったことではないんでしょう。
なぜつっかかるのかわからん。

43 :nobodyさん:03/10/11 21:38 ID:???
>>42何が言いたいかわからん、ということを言いたいのじゃないのか?>>41

44 :参考:03/10/12 02:38 ID:hB6ZK8LU
貧弱なセッション管理について
ttp://www.atmarkit.co.jp/fsecurity/rensai/webhole03/webhole01.html

・セッションハイジャック
・Session Fixation攻撃


45 :nobodyさん:03/10/12 02:43 ID:hB6ZK8LU
>>39
キャッシュを public にすると、そのままブラウザ閉じても、そのURLを開けばまた
情報が出てくるからじゃないの?


46 :nobodyさん:03/10/12 02:47 ID:???
キャッシュの話と>>28は関係ない
>>28は戻るボタンを用意して、内容を復元する配慮をしてくれと
言ってるので、ブラウザの戻るでのキャッシュを使えとは言ってない

47 :nobodyさん:03/10/12 02:51 ID:???
>>33もあれだな。
クラックの危険があるから通常は対策していると言ってるので
指摘される理由がわからんな

48 :nobodyさん:03/10/12 03:08 ID:mzy4uQ15
セッションが使えるケータイってありますか?
ちなみに、J-PHONE J-SH05ではダメみたいです。

49 :nobodyさん:03/10/12 03:14 ID:hB6ZK8LU
>>48
セッションの仕組み一度自分で作ってみたらどう?と思ったよ

50 :nobodyさん:03/10/14 21:07 ID:/RUyf6Fs
session_set_save_handler()でDB(MySQL)にセッション情報を保存して管理する処理を
書いて普通にうまくいってたのですが、idを毎回変えたくて
ttp://www.asahi-net.or.jp/~wv7y-kmr/note/2003-09.html#YMD20030907_PHP
を参考に、疑似 session_regenerate_id()を作りました。

function session_switching() {
$qq = serialize($HTTP_SESSION_VARS);
if (!session_destroy()) {
session_id(md5(uniqid(rand(), 1)));
session_start();
$HTTP_SESSION_VARS = unserialize($qq);
return true;
} else {
return false;
}
}

んで、
session_start();
$noerr = session_switching();
ってやってみたんですが、関数の中のsession_start()で
「Fatal error: Failed to initialize session module」が出てしまいます。
destroy()したあとすぐにstart()するときに何か特別に注意することってあるんですか?
DB関連とsession_set_save_handlerはここをヒントにしました。
http://itbtech.itboost.co.jp/php/php_12.php
DBじゃなく、普通のファイル管理ではうまく動きました。
環境は、RedHat8.0, PHP-4.2.2, MySQL-3.23.56です。

51 :nobodyさん:03/10/14 21:11 ID:/RUyf6Fs
訂正:session_switchingの2行目

if (!session_destroy()) {
 ↓
if (session_destroy()) {

52 :nobodyさん:03/11/13 18:52 ID:???
生きてるか?w

53 :nobodyさん:03/11/19 18:30 ID:???
ハイ

54 :nobodyさん:04/01/08 05:26 ID:K/SrUI+S
アゲ

実際の所さCOOKIE無効のクライアントでも同一か認識できるから
俺はCOOKIEへの保存をセッションに保存してるわけだが

邪 道 か な ?

55 :nobodyさん:04/01/09 19:32 ID:???
良いんでない? 俺もそうするときがあるよ。

56 :ななしくん:04/01/27 22:58 ID:vdgC7W+O
セッション使ったプログラムかいてたんだけどさ、
使い方があまりにも簡単すぎて($_SESSIONとクッキー使った場合)
こっちは身構えてるので、逆に解説とかがわかりにくかった(藁

57 :nobodyさん:04/01/28 03:07 ID:IiAYAwD1
>>56
確かにセッション使うのは楽だけど、
動作原理はしっかり理解する必要があるよ。


58 :ななしくん:04/01/28 06:10 ID:???
>>57
様々な解説書サイトなどはそういう意図で、原理を説明されてるんだとは思います。
なんか、「どう使うか!!!」がなかなかわからなかったんですよ(藁

59 :nobodyさん:04/01/28 08:42 ID:???
オイラも初めてセッションを使い始めた時は、>>58と同じような感じだったなぁ。

セッションが機能するのに何ページ必要かとか悩んだ悩んだ。
a.html フォーム
 |
b.php session_start(); $_SESSION['data']='a';
 |
c.php sessin_start(); $data = $_SESSION['data'];

60 :nobodyさん:04/01/29 07:51 ID:???
同じく。実際やってみて思っていたより激しく簡単だったので
自分がやってることが、全然見当外れなのではないかと思ったりも。
もしかしたら、そうなのかもしれない。
一応自分の思ったとおりに動作しているし、人にチェックしてもらっても
ちゃんと動作していると彼は言う…。

>>57
使い方だけで、まだ原理とかあやふやなので
ちゃんと勉強してみようと思います。

61 :nobodyさん:04/02/01 18:12 ID:LMIdhuo4
>>54
どうやってクライアントを認識しているのか教えてほしいage

62 :nobodyさん:04/02/12 11:51 ID:acZilhbS
以前作ったショッピングサイト(注文数50件強/日※PHPではない)はクッキーでセッション管理してるけど、
カートに商品が入らないという問い合わせが、頻繁ではないがどうしても尽きない。
結局、クライアント側の設定に依存するし、やはり客に色々設定を強いるのはどうかと思う。

次やるとしたらamazonのようにURLに渡して管理したいけど、カート以前のページは
よほど商品数が多くない限り、一般的に静的に作りますよね?

そこで、URLでセッション管理したいがために、静的HTMLで済むものを、全部PHPで動的に
出力するのは馬鹿げた考えでしょうか?


63 :nobodyさん:04/02/12 16:36 ID:???
>>62
いいんじゃない?
URLにセッションIDとか渡すのって普通だと思う。

64 :nobodyさん:04/02/14 08:52 ID:???
俺はPHPじゃなくてJSPだが、静的ページも全部JSPだよ(商用)。
PHPでも同じようなことしてるひといるでしょう。

65 :nobodyさん:04/02/14 17:19 ID:X1Wwd0H+
$_SESSION['msgs'] .= htmlspecialchars($_POST['msg'])
とすると、<input name="msg">に入力された文字列が
/tmpのセッションファイルに書き込まれると思いますが、
保存されるときの文字コードはブラウザから送られてくる
文字コードのままなんでしょうか?

1行目の方法で保存したものを、echo $_SESSION['msgs'];
で出力しても日本語部分が表示されません。
よろしくお願いします。

ブラウザはIEで、サーバー側はこうなってます。
mbstring.internal_encoding = EUC-JP
mbstring.http_output = SJIS
/tmpにある今回のセッションファイル : SJIS

66 :nobodyさん:04/02/14 19:01 ID:1TD2enu0
こんにちは、PHP、Apacheという構成でi modeでセッション管理を行うことは可能なのでしょうか、可能であるとすればphp.iniやhttpd.conf等の設定部分や、またPHPスクリプトに特に留意するポイント等あれば教えて下さい。


67 :nobodyさん:04/02/17 21:52 ID:???
できるけどGETでのセッション管理なんで認証とかにはつかっちゃ駄目

68 :nobodyさん:04/02/18 22:47 ID:???
>>62
Amazonのように作るならOKじゃないの。
あれのカートは「誰の」という情報とは結びつかないようにしてあって、
会計の段階で「誰の」に結びつけるようにしてる。
# cookieが使える場合には、名無しさんAのカートのように、名無しさんも
# 区別して結びつけるけど。cookieに保存したセッションIDを使って。

その辺の個人情報や決済部分と切り離して設計できてれば
カート情報なんて商品リストの中から商品を選んだだけの存在だからね。

69 :nobodyさん:04/02/19 21:15 ID:???
>>68cookieなしで amazon 使えるの?

70 :68:04/02/19 23:37 ID:???
>>69
普通に使えますよ、カート機能自体はSIDがURLに付加されてますし。
cookieが使える場合はその他の機能がプラスされたり、
カート機能の照合補正が行われたり。結構上手く出来てると思います。
気にならない(気づかない)というところも上手いところ。

71 :nobodyさん:04/03/04 23:25 ID:???
session_startした後にPOSTしたページに
戻るボタンで戻ったら有効期限切れってなるのは
どう言う解決法があるのですか?

72 :nobodyさん:04/03/07 22:46 ID:Nzwf/rJi
ホシュホシュ

73 :nobodyさん:04/03/09 22:32 ID:???
おそレスですけど、
昔から、通販業者系はサーバサイドのセッション管理が標準だね。


74 :nobodyさん:04/03/18 02:35 ID:5cjOT2D0
セッションですか?!
私にお任せあれ!!!!!



75 :nobodyさん:04/03/18 05:54 ID:zQ2yHGPu
>>71
session.cookie_lifetime integer

session.cookie_lifetimeは、ブラウザに送信す るクッキーの有効期間を秒単位で指定します。値0は、"ブラウザを閉じ るまで"を意味します。デフォルトは、0です。 session_get_cookie_params()および session_set_cookie_params()も参照して下さい。

76 :nobodyさん:04/03/18 09:33 ID:SVbaZ9qT
ブラウザを閉じても1時間は有効であるように、
ini_set( 'session.cookie_lifetime' ,’3600’ );と記述しました。
書き方がおかしいでしょうか?
この書き方では、設定変更は出来ないようです。

Local Valueは3600に変わるのですが、Master Valueは0になっております。
Master Valueも3600には変わらないのでしょうか?

ini_setを使えばソースから書きかえられると思うのですが。


77 :nobodyさん:04/03/18 10:37 ID:???
>>76
こっちのスレの方が相応しいけど、マルチポストいくないっ

78 :nobodyさん:04/03/18 10:53 ID:SVbaZ9qT
>>77
一言添えればよかったですね。
ちょっとこちらで質問させてください。

79 :nobodyさん:04/03/18 12:14 ID:???
>>78
76の内容については向こうで既にレスが付いているが?
Local Valueではなく、Master Valueでないと駄目という理由が判らん。
値の優先度はLocal(高)、Master(低)。ディレクトリごと指定したいのなら、
Apacheの場合だと.htaccessを利用すれば良かろ

80 :nobodyさん:04/03/18 14:49 ID:SVbaZ9qT
ini_set( 'session.cookie_lifetime' ,’3600’ );と
記述して、セッションIDが追加されなくはなります。

しかし、// ini_set( 'session.cookie_lifetime' ,’3600’ );と
記述して設定をやめて、アップしても
セッションIDが作られないんです。



81 :nobodyさん:04/03/19 15:09 ID:???
鯖を数日動かしてると、
セッションが不安定にならない?
漏れの鯖は三日くらいでセッションがプチプチ切れるようになる。
apacheを再起動すると治るけど、
コレってPHPの設定がおかしいからかな?


82 :nobodyさん:04/03/19 17:48 ID:???
>>81
PHP のバージョンと OS は何?
Linux で PHP 4.2.x を使っていた頃に同じ状態で苦労したことがあるけど。

Apache の error.log に Segmentation Fault とかのログが残ってる?

83 :nobodyさん:04/03/19 22:04 ID:???
>>82
child pid ***** exit signal Segmentation Fault

ログにはこんなもんがいくつか残ってました
OSはRedhatLinuxでapache1.3.27、PHP4.3.2です
なんか分かりますか?

84 :82:04/03/20 00:30 ID:???
>>83
php.ini のセッションの設定で、

session.save_handler

に files 以外を指定している場合は安定しないかもしれない。

でも、PHP 4.3.2 だと、

bug #24592 (NULL related crash in session extension)
bug #22154 (Possible crash when memory_limit is reached and output buffering in addition to session.use_trans_sid is used)

の可能性の方が高そう。PHP 4.3.3 で修正されているみたいなので
バージョンアップしたらセッション周りは安定するかもしれない。
今なら、PHP 4.3.4 かな。もうすぐ PHP 4.3.5 が出そうだけど。

まあ、クリティカルなシステムをバージョンアップするなら、
十分にテストしてからにした方がいいと思う。

85 :nobodyさん:04/03/20 10:00 ID:???
>>84
どうもです
ああ、やっぱバージョンのせいなんですかね
セッション機能にはmmを利用しているんですが、
どうせ処理速度には大差がないだろうし、filesを検討します
そのうちPHP5が出てきそうですが、
焦って飛びつくのは危険そうですね

86 :84:04/03/20 10:55 ID:???
>>85
PHP 4.2.x の頃に、パフォーマンス的に有利ということだったので、

session.save_handler = mm

にしていたことがあったけど、>>81 とほぼ同じ症状になった。
原因が分からず、随分悩んだ後、files に戻したところ、安定するようになった。

PHP 4.3.0 以降では確認していなかったけど、修正はされていないのかな。

87 :nobodyさん:04/03/20 12:40 ID:???
いまfiles指定して動かしてみたところ、
特に処理速度にも問題ないし、とりあえず大丈夫
まあ今後>>81の症状がでるかどうかまだ分かりませんが・・・

でもコレはPHP4.3.2の問題じゃないかもしれませんね
apacheもlogrotateの時にサービスが落ちたりしますから
今じゃ毎朝cronでapacheを再起動してます(苦笑)

88 :87:04/03/20 13:11 ID:???
自分で書いてて思ったんですが、
apacheがちょくちょく落ちるのってかなりやばいよなあ(汗)
OSのレベルからアップグレードを考えるいい機会かもしれない

89 :86:04/03/20 13:35 ID:???
>>87
その状態だと、PHP の方が問題の可能性が高いと思う。
当時は、3日から 1週間にに一度再起動していたし、
apachectl で restart すると Apache が落ちてしまって、
apachectl start しないと起動しない状態になっていたので。

files に変更してからは、Apache が落ちることもなくなったので、
同じ問題だとすると、安定するかもしれないので、しばらく様子を
見てもいいかもしれない。

セキュリティ問題のこともあるので、簡単にバージョンアップできる
のであれば、バージョンアップした方がいいと思うけど。

90 :nobodyさん:04/03/20 15:55 ID:???
>>86
mm ってなんですか?
当方セッション情報を MySQL に入れるハンドら作って動かそうとしているのですが、
既存のがあるんなら使っちゃおっかな〜

91 :nobodyさん:04/03/20 16:33 ID:???
>>90
maji mukatsuku

92 :86:04/03/20 20:56 ID:???
>>90
セッションの保存用の共有メモリ。
ttp://jp.php.net/session

mm を使うと不安定になるという話をしていたのだが、PHP の最新版では
修正されている可能性もあるので使いたいのならどうぞ。

mm をインストール(既にインストールされている Linux ディストリビューションもある)して、
ttp://www.ossp.org/pkg/lib/mm/

PHP の configure で --with-mm を指定してコンパイルする。
php.ini で

session.save_handler = mm

に変更して Apache を起動。

93 :90:04/03/21 03:27 ID:???
おぉ!phpに既に用意されてるのね。さんきゅー
どれどれ・・ふむふむ・・
なーんだ、mmってモジュールの名前なのね・・
こっちか・・ http://www.ossp.org/pkg/lib/mm/
UNIXで動くのね・・どれどれ

#whereis mm
mm: /usr/ports/devel/mm

をを、Portsに入ってるジャン
んでも、こいつの動作検証せなあかんのか〜めんどくさっ

以上5分で却下しますた。ごめん。

94 :nobodyさん:04/04/02 20:40 ID:???

こんなんが出てくるんですけど・・・
Warning: session_start(): Cannot send session cookie - headers already sent by
(output started at c:\program files\apache group\apache\htdocs\session\
session_test_1.php:2) in c:\program files\apache group\apache\htdocs\session\
session_test_1.php on line 3

session();の行でエラーなんだそうです。
/tmpのフォルダもCドライブに作りますたがダメです。

なんででしょうか?


95 :nobodyさん:04/04/02 20:46 ID:???
>>94
すんません!いきなり判明しました・・・
1行目を空白にしていたのが原因でした。

1:    ←空白行にしていた
2:<?
3:session_start();
4:$_SESSION['register'] = 0;
5:
6:?>

1:<?
2:session_start();
3:$_SESSION['register'] = 0;
4:
5:?>

にしただけで治りました・・・
お騒がせしてすんません。


96 :nobodyさん:04/04/04 21:49 ID:zccZUASs
IE6でクッキー機能をOFFにしているのにセッションが使えてしまう。
PHPのSIDもOFFにしているのに・・・
なぜ?

・・・と書き込もうとしたら2chに書き込めないw
なぜ掲示板でクッキー必須なんだ?

97 :nobodyさん:04/04/04 22:30 ID:???
>>96
見逃してるだけだよ。
セッションが使えているなら、cookieかURIパラメータの中に必ず埋め込まれている。

98 :nobodyさん:04/04/04 23:29 ID:???
>>96
勘違いしてるだけだな。

99 :nobodyさん:04/04/04 23:53 ID:???
>>96
コンテンツの中に埋め込む場合もあるけどね。

100 :90:04/04/05 01:55 ID:???
セッションが使えていると勘違いしているに200$$

101 :96:04/04/05 23:36 ID:EigS3bMU
いや、セッションが使えてるのは間違いないのよ
<?php
echo $_SESSION["name"];
?>
とかでセッション情報をページに表示させるようにしてるから

URIパラメータもないし・・・
クッキーがコッソリ動いてるのか?とも思ったが、
2chに書き込みが出来なかったので、それも考えにくい・・・
自分のサイトだけクッキーが有効になってたのか?分からん・・・

102 :nobodyさん:04/04/05 23:45 ID:???
テストに使用してるブラウザは?
IEでプライバシーポリシーうんにゃらで2chからのクッキー食べてくれないとか・・

103 :nobodyさん:04/04/05 23:55 ID:???
Localだから

104 :96:04/04/05 23:57 ID:EigS3bMU
IE6でツール→インターネットオプション→プライバシー項目をMAXにして
「すべてのCookieをブロック」にしたのよ
ふつうコレでCookie機能は無効になるっしょ?

105 :96:04/04/05 23:58 ID:EigS3bMU
>>103
www

106 :nobodyさん:04/04/06 00:01 ID:lpi6f7xm
今やったらセッション使えなかったよ
なんやねんな

107 :nobodyさん:04/04/06 00:34 ID:???
>>104
IEだけで動作チェックするのは間違い。

108 :nobodyさん:04/04/06 02:28 ID:???
IEだけでしか使わない社内用とかならあり
んでも、Mozilla使った方が開発はしやすいぽ

109 :107:04/04/06 05:26 ID:???
>>108
ちゃうちゃう。
最終的なユーザのことを考えた場合のチェックとしてはIEは外せないけど、
デバッグには向かないから使うなってこと。JavaScript系は特にデバッグしにくい。
但しJavaScriptの挙動はIEとMozillaは違うので、そこは留意しないと駄目。
XMLのチェックの部分では、IEの方が出来がいいと思う。

110 :107:04/04/08 00:30 ID:???
そうだね〜
XMLはIEの方が良い!
Mozillaのデバックコンソールってもう一声どうにかならんかなぁ
あとあと、CSSで幅の定義を1どっとずれて描画するのもどーにかならんかなぁ
はうっ!セッション関係無いし

111 :108:04/04/08 00:31 ID:???
>>110 ごめん名前間違えたw

112 :nobodyさん:04/04/14 12:42 ID:???

 セッションとは、   フラグである・・・








 ようやく気が付いた。


113 :nobodyさん:04/04/14 14:05 ID:vcn3L4Wo
>>112
セッションなんて言うからよく分からないんだよな。

「ページを超えて持ち運ばれるフラグ」って言えば分かり易いね。


114 :教えてください・・・:04/05/16 22:13 ID:dL8RQ1Kh
以下の環境を構築しています。
<環境>
サーバA:192.168.11.1 WinXP-Apache1.3.29+PHP4.3.4 
サーバB:192.168.11.2 同上

やりたいことは、
@サーバAのLOGIN.PHPでログイン(=>LOGINFLG=ONを$_SESSIONに設定する)
AサーバBのxxxx.php($_SESSION[LOGINFLG」を見る)にアクセスする
 ->xxxx.phpが、$_SESSION[LOGINFLG」=ONを見て、PHPの参照許可を出す

という、セッション情報をサーバ間で持ち回るということをしたいんです。

条件として、
・セッションクッキーを使わない。
・Windows上(=mmが使えない)ということで、session.save_handler = filesを使う。
という状況なんですが、どうやれば、セッション情報の共有はできるんでしょうか・・

お教えください。。。



115 :nobodyさん:04/05/16 22:43 ID:???
>114
セッションという機能がどういう風に実現されてるか、
またはどういう風にすれば実現出来るか考えてみれ

PHPのセッション機能は複数サーバ間で持ち越しすることは想定されていない(はず)なので、
書いてるようなことを実現したいなら、自分でセッション周りを作って、
セッション管理用のサーバを一つ用意すればいい。
が、そんなややこしいことするよりも、もっとスマートな解決法があると思うぞ。
根本的なとこから見直した方がいいと思う。


116 :nobodyさん:04/05/17 18:19 ID:???
>114
DBは使わないの?
方法によっては簡単に出来るのに。

117 :nobodyさん:04/05/17 23:43 ID:???
session.save_pathを指定しておいて、fsockopenするとか?

#勘違いっぽいのでsageておこう・・


118 :nobodyさん:04/05/19 00:08 ID:???
つーかJavaみたいにphp5ではクラスにセッション情報を保持できるようになるんでしょうか?

119 :nobodyさん:04/05/21 09:38 ID:???
「ページを超えて持ち運ばれるフラグ」ってログイン後はhiddenで、一時的に生成されたユニークなIDみたいなの物をフォームに混ぜて本人確認しているってこと??

perlでもできるよね。登録パスワードをフォームに混ぜちゃえばいいわけだし。
でもリファラー吐くブラウザだと他のサーバー行ったときにパスワードが入っているとまずいのか??
だから一時的な物を生成するの?

120 :nobodyさん:04/05/21 14:11 ID:???
>>119
セッションはサーバーサイドでデータを保持するのが最大の特徴

「クッキーの逆のもの」と考えてもいいかも
クッキーもセッションも「ページを超えて持ち運ばれるフラグ」には違いないが、
そのデータそのものをどちらに保持するかが違う
クッキーはクライアントで保存し、データそのものを含む
だけどセッションの場合にはデータを保持するのはサーバー側で
クライアント側ではデータそのものは保持しない
(代わりにクライアントを識別するためのセッションIDを保持する必要はあるが)
POSTでhidden使って渡すのも、さらにGETでURI渡しするのも、
ページを超えて運ばれるフラグには違いないけど、これらも結局は
クライアント(ブラウザ)でデータを所持しているんだよね


121 :nobodyさん:04/05/21 23:41 ID:???
>>120
何かまとまってないぞ(笑)

要するに毎回データそのものをクッキーなりHIDDENフィールドなりで
運ぶという方法と
そうではなく、識別情報だけをクライアントとサーバー間で往復させて、
サーバー側にハッシュテーブルのようなものでデータを預けて置くという方法
の2つがある。

ぶっちゃけそれだけ。

122 :nobodyさん:04/06/01 20:28 ID:???
>>121
書いているうちに訳分かんなくなっちゃったw
最初の1行だけで済ませばよかったかな


123 :nobodyさん:04/06/01 22:09 ID:???
>>119
サーバ側で生成したサーバ側でしか利用しない値は、
わざわざhiddenで引き回したりしない。つか、してはいけない。
セキュリティホールにもなりうるし。

そういう用途のために(サーバ側の) session を利用するという理由もある。
情報の分離(隠蔽)だな。

124 :nobodyさん:04/06/02 16:13 ID:???
session_register("session_a");
$b=array(1,2,3);
$session_a[b]=$b;

として

session_start();
unset($session_a);

しても$session_a[b]が消えてなかったんだが、バグですか?


PHP Version 4.3.3です。

125 :nobodyさん:04/06/03 15:13 ID:???
バグと言うか、仕様じゃないの?

session_unregisterの注意を読むと、
unsetではフォーカス内の変数のみを消去して、
セッション内の登録は継続されるようだから、
セッションを再開した時にセッション内の登録変数を読み出し直すだけでは?
つまりそのunsetは現在の$session_aを削除するだけで、
$_SESSION['session_a']は削除しないんではないかと。

つーか、
$session_a['b']=$b;
って書くべきだし(typo?)、
session_(un)registerは非推奨

126 :nobodyさん:04/08/20 09:10 ID:rKFIPCr5
CGIに、PHPとPerlがあるんだけど、セッション管理は問題無くできるよね。
バージョンとか微妙なところで制限事項があるのかな?

127 :nobodyさん:04/08/20 15:48 ID:???
はてさて、cookieに限定したセッションの話かしらん

128 :nobodyさん:04/08/22 18:42 ID:TKt9TmhM
サイトに会員制の部分をつくりたいのですが、パスワードをセッション
変数として保持しながらページを作成していくと、javascriptの
history.back()を使用してページを戻るときに「有効期限切れ」と
なってしまいます。

フォーム入力確認で戻る必要があるのですが、どういった方法で
会員制にするのがよいのでしょうか?

129 :nobodyさん:04/08/24 16:45 ID:mVJd0HpM
>128
history.backで戻ってセッション切れちゃうのは仕方ないね。
戻り先のページが別ページなら普通にリンク貼ればOKだと思うけど。。

130 :nobodyさん:04/08/24 16:52 ID:???
結論
セッション(゚听)イラネ

131 :nobodyさん:04/09/02 15:49 ID:???
言われただけの情報で結論出してセンスねえな〜、想像力ゼロか?
それでカッコイイと思ってんのか?キモイ奴だな。

php使ってんならJS使わなくてもリファラからファイル(スクリプト)名と
必要ならクエリだけ取り出してリンクさせたらセッションも生きたままで
可変式のBACKボタンが生成できるだろ?

もっとも同一ドメイン内での話だけどな。

132 :nobodyさん:04/09/03 00:37 ID:???
>>59
亀レスだけど、目から鱗。今日悩んでいたことが氷解した。
解説書に書いてあることが間違ってたよヽ(`Д´)ノ
とにかく、一言言わせてくれ。どうもありがとう。


133 :nobodyさん:04/09/03 09:53 ID:???
ssl通信下でのみsessionIDをクライアント・サーバ間でやりとりする形で無い限り
セッションハイジャックの危険性は常につきまとうと思うのだが、
PCサイトならばcookieにsidを食わせて、sidの確認が必要なページのみsslで通信すれば
良いと思うが、携帯サイト等でsidをURLに引き連れまわす必要がある場合
全ページsslで通信という形にするしかないと思うのだが、どうしてる?


134 :nobodyさん:04/09/03 10:05 ID:???
>>133
セッションに接続元のIPを記録しておいて
if ($_SESSON['ip'] != $_SERVER['REMOTE_ADDR']) {
die 'あぼーん';
}

135 :nobodyさん:04/09/03 10:14 ID:???
>>134
携帯サイトでクライアントをIPで判断できないでしょ?
キャリア側のプロキシのIPだらけになるのでは?
PCサイトの場合でもIPでの判断だと、NATの内側のクライアントは一纏めにしちゃうの?


136 :nobodyさん:04/09/03 13:24 ID:???
>>136
PCの場合はCookieオンリー前提で書いてました。説明不足すんません。
携帯は端末とプロキシのIPは一対一対応だと思ってたんだけど、もしかして違います?
(IPアドレス自体はセッションごとに変わりますが)
だったらこの方法は使えませんね。う〜ん。

現行の3G携帯(というか、そのサーバー)はFOMAを除いてCookieに対応してますが
シェア最大のドコモがこれでは将来的にも難しいですね・・・。

個人情報など、重要なデータをセッションで使うときは最初から最後までSSLで通信して、
漏れてもあまり困らないデータは普通にセッションを使うしかないのかな。
Amazonなんかはそうなってるみたいですね。

137 :nobodyさん:04/09/05 23:33 ID:5TcSHTQS
age

138 :nobodyさん:04/09/06 14:10 ID:???
>>133
まず前提からして間違ってる。

>PCサイトならばcookieにsidを食わせて、sidの確認が必要なページのみsslで通信すれば
>良いと思うが

良くない、cookie値はglobal変数「$_REQUEST」として常にサーバへ渡っている。
したがって、cookieに設定したセッションIDを必要とする時のみSSL通信下で行っても、
それ以外のページではsidは平文でネットワークを流れる事になる。


139 :nobodyさん:04/09/27 20:49:22 ID:???
結局、全てをSSLで通信しないとセッションハイジャックは防げないということでFA?


140 :nobodyさん:04/09/28 01:10:51 ID:???
あてずっぽう

141 :nobodyさん:04/09/28 17:26:54 ID:???
      は、

142 :nobodyさん:04/09/28 18:58:14 ID:???
              防げ

143 :nobodyさん:04/09/29 14:00:46 ID:Gp3joNGA
お上(経産省-産総研)はすべてのページをhttpsにしてcookieにsecure属性を付けるか
もしくはhttp用のcookieとhttps用のcookieの二つを発行しろと言ってるね。

ttp://securit.gtrc.aist.go.jp/research/paper/AIST03-J00017/csec200307-takagi-slide-sp1.pdf

ことネットワーク絡みの話に関しては、お上とその周辺が出してる情報は
とても役に立つよ。

144 :nobodyさん:04/10/06 22:15:29 ID:???
基本的なことでスマンがセッションって何?

145 :nobodyさん:04/10/07 21:46:09 ID:eGrZpUzk
セッションってどこに保存されるの?

146 :nobodyさん:04/10/07 22:01:55 ID:???
tmp

147 :nobodyさん:04/10/07 22:05:54 ID:???
session.save_path

148 :nobodyさん:04/10/07 22:28:49 ID:???
サーバー側に保存されるんだよね?
セキュリティ的にはどうなんだろう?

149 :nobodyさん:04/10/07 22:40:45 ID:???
>>148
レン鯖でもセーフモードかCGI+suEXECでsession.save_pathを適切に設定してれば大丈夫。
ちなみにメモリやデータベースにセッションを保存するようにもできる。
ttp://jp.php.net/manual/ja/function.session-set-save-handler.php

150 :nobodyさん:04/10/07 22:54:49 ID:???
ただ、PHPはセッションIDにcookieを使う際にsecure属性をつけられないので
個人情報を扱うようなときはセッションを使うドメイン全体をSSLで保護するか
$_SESSIONを使う代わりにIDの発行からデータの出し入れまで全部を独自に管理しないといけない。

151 :nobodyさん:04/10/07 23:27:27 ID:???
む、難しいな orz

152 :nobodyさん:04/10/07 23:33:22 ID:???
大丈夫、実際そこまでちゃんと気ぃ使ってるサイトなんてほとんどないからw

153 :nobodyさん:04/10/08 00:39:22 ID:???
>>150
>ただ、PHPはセッションIDにcookieを使う際にsecure属性をつけられないので
PHP 4.0.4 以上だったら付けられる。

php.ini で
session.cookie_secure = 1
とするか、

ttp://jp2.php.net/manual/ja/ref.session.php#ini.session.cookie-secure

session_set_cookie_params()
で設定。

ttp://jp2.php.net/session-set-cookie-params

154 :nobodyさん:04/10/08 00:56:47 ID:???
素で知らんかった。マジありがとう。

155 :nobodyさん:04/10/08 01:37:35 ID:???
>>153
setcookieの最後の引数で指定でもいい?
この場合setするcookieのkeyによってセキュア属性のあるなしになるのかな?

156 :nobodyさん:04/10/08 11:59:28 ID:???
>>155
setcookie() だと最後の引数で指定すれば個別に secure フラグありとなしで
複数の Cookie を設定できる。例えば、以下のような感じで。

setcookie('secure_on',  'test1', NULL, '/', NULL, 1);
setcookie('secure_off', 'test2', NULL, '/', NULL, 0);

正しく Cookie を処理できるブラウザだったら secure_on の方の Cookie は、
https 接続の時にしか送信されない。

157 :nobodyさん:04/10/08 14:14:20 ID:???
>>143
>もしくはhttp用のcookieとhttps用のcookieの二つを発行しろと言ってるね。
に関してはsetcookieの引数で分けるのが良さげかな。

うーん、携帯サイトでhttp://〜〜のショッピングサイトってかなりあるんかね。
気にしだすと怖いな。
GETのSIDをhttpとhttpsで切り替えるとか?イメージわかん…

158 :nobodyさん:04/11/05 23:35:57 ID:onIpwNyM
ヒロシです

MySQL使ってるんですが、
必要最小限の変数だけ session_register して
そのつどMySQLからデータひっぱってくるのと、
MySQLのデータ全て session_register しておくのでは
どっちがよかとですか?

ヒロシです

159 :nobodyさん:04/11/07 18:16:49 ID:???
>>158
データの内容とアクセス頻度(規模)などによって一概にどっちが良いかは言えないし、
「良い」の基準が決まっていないとレスのしようもないんじゃない?

例)
・作成時に楽なら良い
・サーバー負荷を考えると良い
・セキュリティ的に安全だから良い
などなどなどなどなど・・・。

セッションの前に他のことを勉強しろよ。斬り。


160 :nobodyさん:04/11/07 21:42:34 ID:???
ヒロシです

きれいに返されました。
セキュリティ・負荷面を重視しています。
よろしこです。

ヒロシです

161 :nobodyさん:04/11/09 18:20:01 ID:aEAOTgZ1
アンケートページのフォームのValue値をセッションに入れて各ページ間で持ち回りってアブない?



162 :nobodyさん:04/11/12 12:40:22 ID:2kt36js1
PHPでセッションを使って管理ページに入りページの更新やメール配信などをしています。
使用人数は10人です。
OSは基本的にwindowsでバージョンはXPや98など様々です。

ページの更新などをする際に5分くらいでセッションが切れます。
ほぼ10人ともその状態です。

セッションが頻繁に切れる原因とかってありますか?
漠然とした質問で申し訳ないでつ。。

163 :nobodyさん:04/11/12 13:38:08 ID:???
Perlのセッションについて語るすれはどこですか?

164 :nobodyさん:04/11/12 14:19:13 ID:???
>>162
これが参考になるんじゃないかな
http://www.asahi-net.or.jp/~wv7y-kmr/memo/php_security.html#PHP_Session_GC

165 :nobodyさん:04/11/16 15:55:39 ID:???
このスレだけでご飯一杯食べれました。

166 :nobodyさん:04/11/16 16:34:38 ID:???
食前酒みたいなスレやなw

167 :nobodyさん:04/11/17 21:13:10 ID:K1rG9sHP
ヤフーのセッション管理の仕組みって、どうなってるんでしょうか。
ページ移動するたびにDBにアクセスしてCookieと照合してます?

168 :nobodyさん:04/11/19 11:05:17 ID:???
セッションで扱いたいクラスそのものをシリアライズして、セッションIDをKeyにし、
DBへ登録して使っている人って結構いる?
それともメモリー的にとか、DB容量的にとか、処理的に冗長だとかで、むしろ無駄?

169 :nobodyさん:04/11/19 15:38:04 ID:???
Perlで固定のリクエスト投げるHTTPクライアント作ってるのですが、
返ってくるセッションクッキーをどうにかしてブラウザに食わせたいと思ってます。
firefoxのクッキーファイルに書き込むだけではだめでした。
expires付のクッキーはうまくいくのですが…
これを解決する手段はないものでしょうか?

Perlかどうかはどうでもよく、セッションクッキーの話なのでこちらに書き込みました。
もしもっと適切なスレがあれば是非教えてください。

170 :nobodyさん:04/11/21 01:16:45 ID:???
>>169
どうも混乱しているようにしか見えないのだが…
HTTPクライアント作ってるって時点で「板違い」

セッションクッキーってのも意味わかんないし、
まずはセッションは何たるか、クッキーは何たるかを理解してから出直してね。
もしくは169の認識してる「セッションクッキー」と「クッキー」の違いを言ってみ。


171 :nobodyさん:04/11/24 00:14:55 ID:6VcNevlw
>セッションクッキーってのも意味わかんないし
確かに「セッションクッキー」はセッションと言うにはアレかも知れんが、
簡易なセッションを実現するものではあるし、
なにより、みんな「セッションクッキー」って呼んでるじゃん。
で、普通、「セッションクッキー」に対して、単に「クッキー」って呼ぶのは、
「パーマネントクッキー(169曰く、expires付のクッキー)」でしょ。

172 :nobodyさん:04/11/24 06:52:52 ID:???
>>169
セッションクッキーで通じるから別にいいけど
確かに用語の使い方がいろいろ不明な点があって
日本語として文が構築されてない

173 :nobodyさん:04/11/24 09:17:36 ID:???
会員制のサイトつくるとき
セッションIDだけで管理してる?
セッションIDだけだと怖いので
ログインIDと暗号化したパスワードも
セキュアクッキーに書いて
毎回DBと比較してる。
これってやばい?


174 :nobodyさん:04/11/24 14:09:50 ID:???
>>173
やばくはないと思うが
それじゃセッションIDを使う意味があまりなくね?
セッションIDの発行方法にもよるけど
PHPのセッション関数使ってるなら大丈夫じゃないの?

175 :173:04/11/24 15:43:40 ID:???
>>174
レスありがとうございます

ログイン前の匿名情報(ショッピングカートのようなもの)を
セッションIDで管理、
ログイン後の情報はセッションだとちょっと怖いので
セキュアクッキーでアクセスの度に毎回ログインチェックをしてます。

セッションIDだけで
クライアントを特定するのって
会員制のようなサイトでも普通なんでしょうかね?

176 :nobodyさん:04/11/25 03:52:30 ID:???
>>175
個人的な構築法としてはセッションIDとログイン情報を関連付けて
セッションIDきたらログイン情報みて毎回チェックするけど
規模がデカイ or サーバしょぼい 場合は毎回チェックするとレスポンス落ちるから
Yahooみたいに重要な処理のときだけログインチェックみたいな形にしてる

けど173のケースだとログイン前からの情報とも連携するみたいだし
それならセッションIDとcookie使ってても納得できる

毎回ログインチェックするのに越したことはないけど
やっぱりサーバのスペック的な問題でレスポンスが結構影響でてくるから
重要なページ(個人情報変更)とかだけ認証っていう形でもありじゃないかな?

良いセッションの使い方があれば他の人フォロー頼みます。

177 :nobodyさん:04/11/26 20:15:19 ID:5ndPRR48
PHPセッションを生成した段階で、接続元IPを保持すれば、少なくとも
全く異なるネットワーク&端末からの接続は排除できる。
(NAT環境とか一部のCATV環境からのアクセスはどうしようもないけど)。

で、その上でブラウザバージョンとか「相手から送られてくる情報」を、
『セッション単位のワンタイム情報』として管理すればかなりいけるんでない?

まぁ、金銭扱う場合は「やりすぎ」ってのはないだろうけど、使う側の利便性を
考えればワンタイム情報として上記を扱う(+独自のスパイス)でほぼ安全でしょう。


178 :173:04/11/26 20:37:10 ID:???
>>176
やっぱりサーバ負荷は一番気になるとこですね。
たいへん参考になりました。
ありがとうございました。

>>177
大企業などアクセスのたびに
毎回IPアドレスが変わる環境もあるから
だめじゃないかな?

179 :nobodyさん:04/11/27 05:47:30 ID:pSdshSFH
>>178
> 大企業などアクセスのたびに
> 毎回IPアドレスが変わる環境もあるから
> だめじゃないかな?
そんな場合、HTTPに限らず他のサービスでも認証が絡む奴は
大問題になりそうな希ガス...

気のせい?

180 :nobodyさん:04/11/27 07:24:52 ID:GhxEggFV
>>179
IPで認証するの?

181 :nobodyさん:04/11/27 13:53:20 ID:???
>>179
そういう仕組みですから
みんなそれを前提につくってるんだよ

182 :nobodyさん:04/11/27 14:23:13 ID:???
>>179
今更何を言ってるんだ?

183 :nobodyさん:04/11/28 09:37:50 ID:???
そっか、世間ではFTPとかtelnet/sshとか、そんな奴にもクッキーセッションみたいな
「IPが変わってもサービスを継続する」実装が結構あるんですね。
確かに作っちゃえば可能だなー>セッション管理

ちょっと遊んでみよう(w

184 :nobodyさん:04/11/28 17:21:57 ID:???
>>183
FTPとtelnet/SSHはステートレスなプロトコルではないので
セッション管理自体要らんと思う

185 :nobodyさん:04/11/28 23:38:51 ID:???
$_SESSIONに"cid"っていう名前で登録しちゃいけないの?
他の変数は無事なのに、これだけたまに消えるんだけど…

186 :nobodyさん:04/11/29 12:38:23 ID:???
>>184

>>178
> >>177
> 大企業などアクセスのたびに
> 毎回IPアドレスが変わる環境もあるから
> だめじゃないかな?

アクセスの度に変わるんだぜ?
Connection張りにきたからってACK返そうにも
すでにIPアドレスが変わっているんだぜ?

って、釣りか....>>178

187 :nobodyさん:04/11/29 14:14:13 ID:???
>>186
それじゃインターネットに繋がってるだけで送受信できないし
ACK返す前に変わるとかそんなシステムあるの?

1回セッションした後でIP変わってもう一度セッションしたときに
どうなるかだろ
そもそも接続元IPを使ってどーのこーのって
今の時代に使ってるところないだろ

188 :nobodyさん:04/11/29 16:37:42 ID:???
>>187
セッション汁!?

>>186
なんかかみ合ってない。
どういう意見なの?
できればはじめての発言でないなら前のレス番使ってくれ。

189 :nobodyさん:04/11/29 22:17:54 ID:???
>>188
その回答は>>178だけが知っている。
「毎回IPアドレスが変わる環境」の“毎回”って何よ?

190 :nobodyさん:04/11/30 01:20:22 ID:???
ttp://yougo.ascii24.com/gh/79/007983.html
黙って読め

191 :nobodyさん:04/11/30 09:58:03 ID:???
>>189
もしかして
「ダイアルアップする度の間違いだろ」
とか思ってないよね?w

192 :nobodyさん:04/11/30 12:42:02 ID:???
>>190
「アクセスの度」っていう「アクセス」の定義が不明なんじゃない?
セッションはその通りだけど、PHPのセッションとはまたちょっと違う気がする。
HTTPセッションが切れても状態を引き継ぐための一例としてPHPセッションが
有るんじゃないの?

193 :nobodyさん:04/11/30 14:41:16 ID:???
>>192
セッションが切れてない間は
IPアドレスが変わらないって言いたいの?

なにが言いたいのか
結論を書いてくれないと
話しが終わらないんだけど

194 :nobodyさん:04/11/30 21:15:35 ID:???
>>193
さっさと話を終わらせてくれって言いたいの?

ならそう言えよ

195 :nobodyさん:04/11/30 22:03:43 ID:???
>>193
逆でしょ?
「IPアドレスが変わっても(サービスのために)セッションを切らない」
為の仕組みが「PHPセッション」な訳ですよ。

つか、「セッション」の定義を表現せねばなるまいね。
IPセッションなのか、HTTPセッションなのか。



196 :nobodyさん:04/11/30 22:54:22 ID:???
>>195
激しく同意!

ってかセッションってWEBでのセッションはHTTPセッションで
PHPセッションとかってセッション管理だろ
Perl=CGIみたいな初心者的勘違いだな

けど>>186とかACKが帰ってくる前にIP変わるわけだから
これはセッション自体成り立たない

>>192
それはセッション管理だろ

197 :nobodyさん:04/12/01 11:09:14 ID:???
どれがだれの発言なんだか
全くわからん
1人の自演だったらすごいけど

198 :nobodyさん:04/12/01 15:47:55 ID:???
ここにはオレとオマイしかいませんよ?

199 :nobodyさん:04/12/01 17:02:20 ID:???
>>198
よかった、一人じゃなかったんだ

200 :nobodyさん:04/12/01 19:13:52 ID:???
少なくとも3人いるな(w

201 :nobodyさん:04/12/01 22:34:09 ID:???
俺もいるよ
仲間はずれにしないでくれ

202 :nobodyさん:04/12/02 09:00:03 ID:???
じゃぁ3人ってことね

203 :nobodyさん:04/12/02 09:43:08 ID:???
4人目。

204 :nobodyさん:04/12/02 21:26:45 ID:pa/YvkmO
点呼とか死ぬほどウゼーしさ、キモイから消えてくんね?

205 :nobodyさん:04/12/03 00:38:38 ID:???
>>204
そんな無意味なこと書く前に>>178の後半に突っ込み入れるなり
フォロー入れるなりしてみろよ。出来なきゃすっこんでろ。

206 :nobodyさん:04/12/03 03:27:54 ID:???
なんでそこで>>178が出てくるんだか

207 :nobodyさん:04/12/03 03:43:36 ID:???
>>206
>>205==>>178

208 :nobodyさん:04/12/03 12:41:20 ID:???
結構入れ食いだと聞いたんですが、
ここでいいんですか?

209 :nobodyさん:04/12/03 14:49:15 ID:w3rfsX9n
かみ合わない会話が人格攻撃に発展したスレはココですか?

210 :nobodyさん:04/12/03 16:43:06 ID:???
おまいらセッション使う時、ハンドラはファイル使ってますか?
それともDBハンドラ書いてます?

漏れはDBハンドラ使ってるけど。


211 :nobodyさん:04/12/04 09:33:25 ID:???
>>210
バランシングしている複数のwebサーバでセッションを共有したいので
セッション情報はバックエンドのDBに入れてDBハンドラ使いまくりです。

212 :nobodyさん:04/12/04 10:21:05 ID:???
俺はNFSでファイル共有してます。
物理的にバックエンドDBサーバと同じところにあるので
DBで共有しても良いのだが。特に意味は無いがファイルで。

213 :178:04/12/04 12:27:40 ID:???
>>205
なにか間違ってる?

214 :nobodyさん:04/12/04 14:45:51 ID:???
>178 別に間違ってないと思うよ。
>183 とか >186 とかで訳分からん事言ってから話がおかしくなったみたいねえ。

215 :nobodyさん:04/12/04 21:59:42 ID:???
なるほど...

216 :210:04/12/08 02:26:30 ID:???
>>211
漏れと用途が一緒だ。。

>>212
一度NFSでと考えたけど、オーバーヘッドでかくないですか?

DBハンドラでも大してかわらんかも。。。
ベンチはかってないから分からないけど。。


217 :みきすけ:05/01/18 09:30:28 ID:fy32GETL
どうやってセッション管理すんの!!

218 :みきお:05/01/18 10:19:23 ID:fy32GETL
みきすけさんへ
マニュアルを見てください。

219 :nobodyさん:05/01/18 10:49:26 ID:???
>>217-218
新手の自演?


220 :nobodyさん:05/01/22 12:37:17 ID:???
コントじゃろ。

221 :みきすけ:05/01/23 13:52:25 ID:VKXvKdgM
この前の書き込みはすいませんでした。
掲示板とか書き込むの初めてなので失礼なことをしてしました。
今、授業でPostgreSQLとPHPを用いてでセッション管理と
ユーザ認証をするプログラムを書かなければならなくて本から
ユーザ認証のプログラムをパクッたんですが、変更しなければ
ならない箇所があるらしく、さっぱり分かりません。
ログイン後の画面のURLを直接入力してもログインしていない状態
ではエラーがでて、そこにとべないようにようにするには
プログラムに何て書けばよいのでしょうか?
理解度が足りず、意味が通じないような質問になってすみません。

222 :nobodyさん:05/01/23 13:58:56 ID:???
その授業とやらには、先生やら生徒やらはおらんのかのぅ。

223 :nobodyさん:05/01/23 14:16:17 ID:???
>>221
パクった本をまずはよく読むこと。
"課題"なんだから、意味判らんままにコードを流用すんな。

つか、見るのはどんな先生かしらんが、
PHPぐらいなら出版物の量も少ないので
コードのパクりかたが、あからさまだとばれるよ。

224 :nobodyさん:05/01/23 16:25:22 ID:???
俺もPHPじゃないけど課題出た時に
めんどくさくて書籍のサンプル丸写ししたんだが、先生にばれた。

しかし、先生が机に叩き付けた本は出版社も著者も全然違う人だった。
うーん。

225 :nobodyさん:05/01/23 17:00:25 ID:???
コードは知らんが、解説は本も別の本からのパクリが入ってることもある。
かといって別の本や資料を全然参考にもしてない記述は、
アレ?と思うような変な(適正とは言いがたい)内容のものも、ちらほら

226 :nobodyさん:05/01/23 18:54:00 ID:???
>>224
そう言うのは変数名くらい変えとかないと。
あと、インデント幅とかカッコの付け方とか
コメントを適当に付けたりして誤魔化すと完璧。

227 :nobodyさん:05/02/04 13:02:28 ID:vme7g+zP
まじ役にたたねぇ。
まともな回答一つもないし。
結局そんなもんか。



228 :nobodyさん:05/02/04 15:44:32 ID:???
つーかPHP読めないとその他の言語に移ると絶望的だぞ
これほど簡単な言語はない。arrayの取り扱いを
始めたみたときは正直チンポの先から汁がちょっと出た。ちょっとだけね

229 :nobodyさん:05/02/15 18:16:00 ID:???
携帯でtopページ以外をブックマークや直リン禁止にするという処理も
phpとセッション管理でできるのかな?

230 :nobodyさん:05/02/15 18:17:02 ID:???
でも具体的にそういうスクリプト配ってる所ってないよね。
需要は充分すぎる程あると思うんだけど…

231 :nobodyさん:05/02/15 23:46:53 ID:???
>需要は充分すぎる程あると思うんだけど…

そんなケツの穴の小さいこと考えてんのお前だけだよ(ガハハ

232 :nobodyさん:05/02/17 12:47:08 ID:???
>>229
topページなんか見たくないんです

233 :nobodyさん:05/02/17 13:14:28 ID:???
>>229-230
救えない阿呆

234 :nobodyさん:05/02/17 18:17:56 ID:???
具体的の使い方が違いますよ。

235 :nobodyさん:05/02/17 18:39:57 ID:???
このスレってなんのためにあんの?

236 :nobodyさん:05/02/17 18:44:58 ID:???
>>1のことをプッて笑うスレですよ?
>>3書いたのオレだ。懐かすぃ

237 :nobodyさん:05/02/17 20:07:35 ID:???
>>236
プッ

238 :nobodyさん:05/02/20 15:45:27 ID:HD8VrkSM
セッションってhiddenによるデータの持ちまわしや
URLにクエリ文字列を埋め込む方法等とどのように使い分ければいい?

239 :nobodyさん:05/02/20 18:02:46 ID:6EZLRG8p
ページの変遷すべてにformからsubmitで跳びたくなければURLで引き回しなさい

240 :nobodyさん:05/02/20 18:26:29 ID:???
>>238は、
POST・GETの話じゃなくて、セッション使用とページ毎に全データ渡しの話の希ガス
オイラは特に使い分けはしてない。その時の気分次第

241 :nobodyさん:05/02/20 18:39:53 ID:6EZLRG8p
>>229
セッション切れてたらTOPページにリダイレクトするとかで良いんじゃね?

242 :238:05/02/21 02:23:56 ID:???
つーかあれか。ページIDのようにボタンを押すたびに変わるような
ものはhiddenやクエリーで持ち、ログインIDやパスワードのような
ずっと持ちまわすようなものはセッションというような使い分けかな?
と自己レス。

243 :nobodyさん:05/02/22 00:15:50 ID:???
藻巻いらPHPの知識とかどこで仕入れてくんの?

244 :nobodyさん:05/02/22 07:48:53 ID:???
知識そのものじゃなく仕入れ方まで聞くのかよっ

245 :nobodyさん:05/02/22 12:43:47 ID:???
>>243
魚河岸で。

246 :nobodyさん:05/02/22 18:43:15 ID:???
俺はPerl⇒PHPときたが、Perlの場合は既存のスクリプトが腐るほどあったんでそれを参考にしながら覚えて
PHPはマニュアルが充実してるんで、殆どそれ見ながら覚えたヨ!

247 :nobodyさん:05/02/23 08:55:22 ID:mE2XQAit
あげー

248 :nobodyさん:05/02/24 17:29:34 ID:???
PHPは簡単だよ。・・・そう、知的障害児が道路を横断するのと同じぐらい

249 :nobodyさん:05/02/24 19:49:22 ID:???
何を伝えたい例えなのか全然わがんね

250 :nobodyさん:05/02/24 21:38:01 ID:???
>>248
貴様の息子/娘が知的障害児で産まれるように強く願ってます

251 :nobodyさん:05/02/24 23:25:30 ID:???
ぶっちゃけPHPなんかリファレンス本を1日読めば次の日から
「PHPできます」って面接で言っちゃって大丈夫。
俺はそうした。余裕でしょこんな雑魚言語。

252 :nobodyさん:05/02/24 23:33:01 ID:???
「できます」なんて指標は、客観的でないのでちっともあてに出来ない。
つうてもJava5年とか書かれてるスキルシートも全然あてにはならんが。

253 :nobodyさん:05/02/24 23:33:24 ID:???
>>251
wラタ
よっぽど酷い会社なんだな

254 :nobodyさん:05/02/25 01:10:45 ID:???
ワロタ

255 :251:05/02/25 23:52:19 ID:???
笑い事じゃなくて、PHPを習得するのに3日以上かかるようじゃ
正直プログラマとしてのセンスを疑うね。

256 :nobodyさん:05/02/25 23:54:11 ID:4WDXXuTL
習得ってどの程度を言うのでしょうね

257 :nobodyさん:05/02/25 23:59:29 ID:???
けいじばんつくれるぐらい!

258 :nobodyさん:05/02/26 10:15:19 ID:???
>>251
そんなんで企業に入れるのか
やばくねぇかそこw

259 :nobodyさん:05/02/26 10:30:38 ID:???
山田系かも

260 :251:05/02/26 22:58:19 ID:???
お前等ってPHPを習得するのに1ヶ月とかかけるわけ?能無しか?
ちなみに俺は会社に入ったわけじゃなくて個人事業主として
業務委託されてるだけだけどな。

261 :nobodyさん:05/02/26 23:20:36 ID:???
習得ってどの程度を言うのでしょうね
セッションの話まだー?チンチン

262 :nobodyさん:05/02/27 01:15:18 ID:???
セッションへんすうにだいにゅうできるぐらい!

263 :nobodyさん:05/02/27 21:56:58 ID:???
>>261
普通に業務をこなせるくらいだろ?
馬鹿かお前?

264 :nobodyさん:05/03/01 22:07:03 ID:???
PHPのマニュアルに載っていたものです。
page2でgreenとcatと時間が表示されるはずですが、
Welcome to page #2
1969 12 31 23:57:00
page 1
しか表示されません。なんででしょう・・・(´・ω・`)
--------------------------------------------
<?php
session_start();
echo 'Welcome to page #1';
$_SESSION['favcolor'] = 'green';
$_SESSION['animal']   = 'cat';
$_SESSION['time']     = time();
// cookieによるセッションが受け入れられていれば動作します
echo '<br /><a href="page2.php">page 2</a>';
// あるいは必要ならセッションIDを付加します
echo '<br /><a href="page2.php?' . SID . '">page 2</a>';
?>
-----------------------------------------------
<?php
session_start();
echo 'Welcome to page #2<br>';
echo $_SESSION['favcolor']; // green
echo $_SESSION['animal'];   // cat
echo date('Y m d H:i:s', $_SESSION['time']);
// page1.phpでやったように、ここでSIDを使うことができます。
echo '<br /><a href="page1.php">page 1</a>';
?>


265 :nobodyさん@264:05/03/01 22:08:48 ID:B0aTXW7C
(追加)
OSとPHPは
Apache/1.3.28 (Win32)
PHP/4.3.10 です。


266 :nobodyさん@264:05/03/01 22:20:47 ID:???
1969 12 31 23:57:00
と出るのは、$_SESSION['time'] がNULLのままだからでしょうね・・・

php.ini では
session.auto_start = Off
session.use_trans_sid = On
なんですが、他に設定するところなどがあるでしょうか?


267 :nobodyさん:05/03/02 12:42:44 ID:???
まずは最初のページへアクセスした際に
php.iniで設定したsession.save_pathに
保存されているかを確認してみましょう。

268 :nobodyさん:05/03/02 12:45:20 ID:???
あと、PHP will not create this directory structure automatically.
と書いてあるので、例えばsession.save_path = "C:\tmp"だったら事前に
tmpフォルダを作っておかないといけない。

269 :nobodyさん@264:05/03/02 22:07:46 ID:???
>>267 >>268
お世話になります。

何故か php.ini で session.save_path = c:\php\sessiondata になってました・・・
(いつの間に???)

いろいろなページを参考にしていじっている内に、こうなってしまった様です。
一応、phpの下にsessiondataを作って動くようになりました。
基本的にはc:\tmpですよね・・・

お手数をお掛けしました。m(_ _)m


270 :nobodyさん:05/03/19 13:08:11 ID:oXb2sDzY
セッション変数て、PHPデフォのファイルで管理すんのとDB使うのとぶっちゃけどっちが
早いの?軽いの?

271 :nobodyさん:05/03/19 13:36:06 ID:???
どっちが速いかはようわからんっちゅーか、どーでもええし、どーせ大差ないとは思うんだけど
ユーザが増えたときにファイルだとinodeの制限を受けてエラー発生てのもあり得ますから。
だから大規模サイトならDB以外ありえない。

272 :nobodyさん:05/03/19 18:33:39 ID:???
>>270
大規模の場合はバランサーはさんだりでめんどいからDBセッション多用する。

273 :nobodyさん:05/03/19 20:43:56 ID:???
270じゃないけど参考になった

67 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.02.02 2014/06/23 Mango Mangüé ★
FOX ★ DSO(Dynamic Shared Object)