2016年6月頃からChromeで「現在地取得」が正しく表示されなかったりするようになった。
(現在はiOS(iPhoneなど)上のブラウザやMacのSafariも該当。firefoxはver.50から)
◎原因
Chromeで現在地の表示に失敗する現象は、不具合ではなく仕様変更によるもの。
http接続のページから現在地を取得することが禁止されたようだ。
Geolocation API removed from unsecured origins in Chrome 50
http接続による通信では情報は暗号化されていないので、ネットワークから容易に通信中の情報を窃取されてしまうということがある。
そして現在地及び閲覧者が今いる位置の緯度や経度は、状況によってはプライバシー情報である。
それをhttp接続のように安全でない通信手段でやりとりすると、外部に漏えいする恐れが高い。
以上の理由を鑑みてChromeではこのような対応になっている。
◎対策
■サイトをhttps://接続に対応させる(SSL導入)
※テーマ内の外部読み込みファイルもすべてhttps://にする。
◎「現在地」取得以外の問題
・【MW Google Maps】プラグインが動作しない
管理画面に「住所から緯度経度を取得」する機能を実装する為に使用しているプラグイン【MW Google Maps】が動作しなくなった。
- サイトをSSL対応する
- プラグインのコアファイルを修正
・mw-google-maps.php L87 http://→https://
・js/jquery-google-maps.php L158 http://→https://
・system/mw_google_maps_admin_page.php L265 http://→https://
※Ver.1.3.1の場合