2ちゃんねるブラウザ「JaneView」 Part84

このエントリーをはてなブックマークに追加
188名無し~3.EXE
870 名前:†Mango Mangüé ⭐ (ワイモマー)[sage] 投稿日:2015/01/15(木) 02:45:53.35 ID:qDDSoIAGM
HTTP 416問題はgzip転送が原因。

専ブラの差分取得は元々無圧縮で取得している。
gzip圧縮で取得してしまうとdatの頭からgzip圧縮したデータの
途中から取得することになって正しいデータを得られないからだ。

今回cloudflareが間に入ったことでおかしくなっている。
client - cfの間は専ブラのリクエストどおり無圧縮になっているが
cf - 2chの間の転送が勝手にgzip有効になってしまっている。

2chのサーバに無圧縮のときのrangeでリクエストが届いて圧縮データを取得しようとしているために
範囲外になって416がおきる。

対応は.htaccessでRangeリクエストの時に圧縮転送をしないように明示化すれば良い。
SetEnvIf Range .+ no-gzip
BBR-MD5:CoPiPe-2151cf7e3e3e5db6f74f5ddd953e63fd(NEW) BBS_COPIPE=Lv:24 / 51134
This is Original

878 名前:†Mango Mangüé ⭐ (ワッチョイ)[] 投稿日:2015/01/15(木) 08:35:18.19 ID:6Y2U9Tew0
CloudFlareの設定でキャッシュを使用しないようにすれば
専ブラでのdat長の不整合やら差分取得時の巻戻りやらは防げると思う
BBR-MD5:CoPiPe-c71ea498a788e14072f55ca43959e9f7(NEW) BBS_COPIPE=Lv:24 / 25000
This is Original