Your SlideShare is downloading. ×
2014年には役に立たないセッションの昔話 #hachiojipm
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

2014年には役に立たないセッションの昔話 #hachiojipm

330
views

Published on

2014/6/21に行われた Hachioji.pm#41 で発表したLTのスライドです。

2014/6/21に行われた Hachioji.pm#41 で発表したLTのスライドです。

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
330
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. 2014年には役に立たない セッションの昔話 OGATA Tetsuji (@xtetsuji) 2014/06/21 Hachioji.pm#41
  • 2. 自己紹介 • 尾形 鉄次 (OGATA Tetsuji) • Twitter: @xtetsuji • Blog: http://post.tetsuji.jp/
  • 3. 先日 「シニアエンジニアによるガラケー大戦回顧録」 というイベントをやりました
  • 4. ひっそりとやろうと思ったら なんかバズった
  • 5. ガラケー懐かし話満載
  • 6. ガラケー時代はセッションも 苦労した
  • 7. ガラケー時代のセッション • Cookie使えない! • なのでURLにセッションを入れる • その引き回し方に各社各人の秘伝のタレがあった • セキュリティに詳しい人は「あれリファラから漏れるん じゃないの?」っていうけど、そこは低機能な柔軟性の あるガラケー、リファラは送りません
  • 8. ガラケー時代のセッション • でもVodafone(Softbank)の「P型端末」という2G機種は Cookieが使えないのにリファラを送るという最低最悪な 端末でした(既にこの世から消え去りました)
  • 9. 引き回し方法 • 既存の枠組みに任せる。PHPだとCookieが使えない場合 にPHPSESSIDがクエリ引数に自動でついてまわる機能 があってガラケー時代に大ブーム • 自分で作る場合にはプログラム側で「どこか」に入れた セッションをURLからURLへ渡すようにする(a要素や form要素を全て書き換える) • 静的ページを挟む場合に面倒
  • 10. 僕は考えた • フォルダのように見せかけたセッションだったら、静的 ページをはさんでも相対リンク遷移だと大丈夫? • e.g. /s=ZYX321abc987/path/to/foo.html
  • 11. 今以上に知識がない当時 • Apache一択時代 • これ、mod_rewriteを使えば環境変数に入れられるん じゃないか?
  • 12. mod_rewrite例 • RewriteRule ^/s=([^/]*)(/.*)$ $2 [QSA, E=session:$1]! • だいぶ忘れちゃったけど、雰囲気こんな感じ • あとはmod_perlのレスポンスハンドラとか、 mod_actionなどで、静的ファイルを処理するふりをして 後ろで処理するPHPやPerl CGIを置いておけばよい • 自力対処で困るのは206 Partial Contentの場合
  • 13. 206 Partial Content • HTTPの部分リクエスト。ダウンロードレジューム機能 やPDFのページ飛ばしとか、色々裏で使われている • ガラケー時代はその性能の貧弱さゆえ、着メロのダウン ロードとかにこれを必須にしていた(RFCでは努力項目) • Apacheだと標準の出力ハンドラ(default-handler)が処理 してくれるけど、PHPでfopenとかするプログラムを裏 に据えてもこれを認識しないのでツライ
  • 14. 左側セッション • この「パスの左側にセッション文字列をディレクトリの ように見せかけて後で処理」方法を自分では「左側セッ ション」って社内で呼んでいた • mod_perl覚えたて時代にうまくいったプロジェクトも あった • ただ、ガラケー衰退とともに忘れ去られていきました
  • 15. Cookie最高!
  • 16. おしまい