PullReq #34
baiduのOSS L7 load balancerであるbfeにおいて、staticファイルをサーブするmoduleで、リクエストしたファイルがもしgzで圧縮されていたら、圧縮ファイルを返せるようにした。
サーバ側のconfで圧縮ファイルがあれば返す設定を入れて、一応client側がgzipを解釈できるかを判定するために、clientからのHTTPリクエストヘッダにAccept-Encoding: gzipが含まれた場合、本機能を発動するように実装した。ファイルを返すときでも、その辺のヘッダ解釈をするのは当然なのか不明…。ただこれで良さそうだったのでmergeされたっぽい
c.f. Accept-Encoding - HTTP | MDN
go製のshellであるgoshで、historyコマンドがクラッシュするバグがあったので修正した。表示文字列を決めうちの値から文字列の長さで引き算して、その結果の数だけstrings.Repeatで空白をパディングする処理があったのですが、長いコマンドがあると、引き算の結果が負数になりstrings.Repeatがpanicになるので、長いコマンドの時はこの処理を実施しないようにした。
c.f. strings - The Go Programming Language