tekitoumemo’s diary

C#、.NET系の技術ブログを書いています。みんなの洋楽ランキングを運営しています。

.Net CoreのRazorエンコードとかSEOの影響とか

.Net CoreのRazorは、デフォルトでエンコードされるように出来てます。これが普通に最低でした。みんなの洋楽ランキングは、タイトルをシステムで出力したりしてるんですが(以下)、それが全部エンコードされてわけわからん感じになります。

<title>@ViewBag.Title - みんなの洋楽ランキング</title>

こんな感じになる
f:id:tekitoumemo:20180806213305p:plain

.NET CoreのRazorはデフォルトでHtmlEncoder.Defaultってのが使われているのですが、これをエンコードしないようにDIして制御しなければいけません。なので以下のコードで制御します。

services.AddSingleton (HtmlEncoder.Create (UnicodeRanges.BasicLatin,
    UnicodeRanges.CjkSymbolsandPunctuation,
    UnicodeRanges.Hiragana,
    UnicodeRanges.Katakana,
    UnicodeRanges.CjkUnifiedIdeographs));

これはシングルトンにしてください。

f:id:tekitoumemo:20180806213842p:plain
最近SEO下がりまくってアクセスが激減したのですが、いくつか要因があるので一つずつ潰してます。
iTunesアフリエイトSVGがクソ重い(改善済)
・HTMLエンコード(改善済)
・導線とコンテンツ不足(日々改善)
一旦これで様子見て経過を書いていきます。まぁ今月は1万PV割れする可能性大なのでボロボロですね。

Net Frameworkではこんなことなかったので、気をつけなければ。。