Windows Azure の Web サイトで SVG を表示できなかった時の対処
ぺんぎんさん( @penguin2716 )がろまのふ魔法陣を公開されていました。
皆様にInkscapeの便利さを分かってもらいたい pic.twitter.com/vugMmYuvTX
— ぺんぎんさん@D進しました (@penguin2716) 2015, 2月 11
SVG で出力できないか聞いてみたところ
@k_zoar もち
— ぺんぎんさん@D進しました (@penguin2716) 2015, 2月 11
ということだったので公開された SVG を Leaflet の中心に表示させようとトライしました。
っても Leaflet の機能ではなく CSS で Object を中心に表示させただけなんですが。
こちらSVGリンク
https://t.co/oVr3y2pGL2
— ぺんぎんさん@D進しました (@penguin2716) 2015, 2月 11
で、記事の本題。
出力してもらった SVG を Azure Web サイトに配置して直リンクで表示を試みたところ、次のようなエラーが出て表示することができませんでした。
the resource you are looking for has been removed, had its name changed, or is temporarily unavailable.
白い背景にこのメッセージは絶望的ですが、メッセージをそのままコピペしてググったところ、 Azure Web サイトでは MIME タイプで SVG が定義されていないためではないかという推定になりました。
Windows Azure Web サイトに MIME タイプを追加するには、 Web サイトのルートディレクトリに web.config
ファイルを配置し、設定を書き込めば OK 。
具体的には下記の内容を記録してアップロードしました。
<configuration> <system.webServer> <staticContent> <mimeMap fileExtension=".svg" mimeType="image/svg+xml" /> </staticContent> </system.webServer> </configuration>