たそらぼ

日頃思ったこととかメモとか。

rails5でfaviconの設定

faviconをサイトに設定したかったのですが、なぜかハマりました。
(こんなのでハマるはずないとか言わない。)

バージョン>
ruby : 2.5.0
rails : 5.2.1

<うまくいったやり方>
① index.html.erb に
<%= favicon_link_tag() %>
 を書く。
② /public に "favicon.ico" で画像を入れる。

今回はfaviconを自作しました。
f:id:nayutaso:20181016214915p:plain

herokuにデプロイして、Chromeで開きます。
f:id:nayutaso:20181016214820p:plain
うむうむ、しっかり表示されました。

元のfaviconは縦横1:1に余白設定しておくと良いです。


ちなみにrails4.2.1の方
qiita.com

や、その辺のサイトのソースコードを見させてもらうと、
link や <%= favicon_link_tag() %> で app/assets/images から呼んだりしていたのですが、同じようにやっても、なんかうまくいきませんでした。
なんでだろう。

=======追記========
はじめにapp/assets/imagesにfavicon.icoを入れてデプロイしたら、favicon が出なかったのですが、
もともと/publicに空の "favicon.ico" が入っていて、それが悪さしていたのかもと思いました。
が、一回表示された後に、/public に "favicon.ico" を戻しても、app/assets/images に favicon.ico があれば、
asstets 内の favicon が優先して表示されました。
何かパスが間違っていたのかもしれないし、assets 周りのことなのかもしれないですが、
あまり深く考えず、とりあえず app/assets/images か /public に入れて試行錯誤するのが速そうでした。

今、使っている環境は も /public から呼ぼうとするので、なんか環境の問題があるのかも。