差分

43行目: 43行目:  
=== MediaWikiについて ===
 
=== MediaWikiについて ===
 
1.25にバージョンアップしたらどうでしょうか。スマホでもモバイルビューで見れるようになるし、色々便利になると思います。--[[利用者:Yamamasa|Yamamasa]] ([[利用者・トーク:Yamamasa|トーク]]) 2015年10月24日 (土) 19:18 (JST)
 
1.25にバージョンアップしたらどうでしょうか。スマホでもモバイルビューで見れるようになるし、色々便利になると思います。--[[利用者:Yamamasa|Yamamasa]] ([[利用者・トーク:Yamamasa|トーク]]) 2015年10月24日 (土) 19:18 (JST)
 +
 +
=== ページが正しく読み込まれない問題について ===
 +
 +
Internet ExplorerやSafari(iPhone版を含む)を使った場合にCSSが正しく読み込まれなかったり、文字化けが生じたりする問題が発生していました。Wikiプログラムを動作させているPHP実行環境の設定を変更し、手元の環境で問題が解消されたことを確認しました。対応が遅くなり、申し訳ございませんでした。依然として解消されていない場合はお伝えください。よろしくお願いいたします。--[[利用者:Ochaochaocha3|ocha]] ([[利用者・トーク:Ochaochaocha3|トーク]]) 2016年2月11日 (木) 21:12 (JST)
 +
 +
==== 原因と対策 ====
 +
以下は技術的な説明です。
 +
 +
MediaWikiプログラムを動作させているHHVMの標準設定とWebサーバーのNginxの設定により、CSSファイルが二重にgzip圧縮されて送信されていたことが原因でした。この状態では、CSSファイルのHTTPレスポンスの Content-Encoding ヘッダが <code>gzip, gzip</code> という値になります。ブラウザのうちChromeとFirefoxはこの値に対応しており、CSSファイルを正しく展開するため問題なく表示されていました。一方、未対応のIEおよびSafariはCSSファイルを正しく展開できず文字化けしたような状態で読み込んでいたため、CSSが正しく設定されなかったり文字化けが生じたりしたものと考えられます。
 +
 +
今回はHHVM側でgzip圧縮が無効になるよう設定することにより、1回だけgzip圧縮されるようにしました。
 +
 +
==== 参考文献 ====
 +
* [http://stackoverflow.com/questions/27918475/how-to-disable-nginx-double-gzip-encoding-when-fastcgi-backend-occasionally-serv php - How to disable Nginx double gzip encoding when fastcgi backend occasionally serves gzipped with content-encoding? - Stack Overflow]
 +
* [https://github.com/facebook/hhvm/issues/5316 HHVM always compresses output if Accept-Encoding: gzip is set, even if zlib.output_compression=Off is set · Issue #5316 · facebook/hhvm]
 +
* [https://phabricator.wikimedia.org/rMWVAf11efbddee81e27f5eeba04589f84939cab71d8b hhvm: set GzipCompressionLevel = 0 to avoid double-gzip]