Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
FirebaseでSPAするときのSEO/OGP対応もうこれでいいんじゃないですか20...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
o_tomomichi
April 02, 2018
Programming
1
7.7k
FirebaseでSPAするときのSEO/OGP対応もうこれでいいんじゃないですか2018暫定版
o_tomomichi
April 02, 2018
Tweet
Share
More Decks by o_tomomichi
See All by o_tomomichi
個人開発からのんびり育てる意識低いWebサービス開発の話 / Easy going web development
tomomichi
0
2.1k
個人開発を支える何も作らない技術 / No Devs No Bugs
tomomichi
3
1.1k
Herokuの無料プランで月間100万PVをさばく(さばかない)話
tomomichi
3
8.8k
Other Decks in Programming
See All in Programming
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
190
Feature Toggle は捨てやすく使おう
gennei
0
360
コードレビューをしない選択 #でぃーぷらすトウキョウ
kajitack
3
1.1k
Rで始めるML・LLM活用入門
wakamatsu_takumu
0
210
PHP 7.4でもOpenTelemetryゼロコード計装がしたい! / PHPerKaigi 2026
arthur1
1
410
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
180
Ruby and LLM Ecosystem 2nd
koic
1
1.3k
Geminiをパートナーに神社DXシステムを個人開発した話(いなめぐDX 開発振り返り)
fujiba
0
100
へんな働き方
yusukebe
6
2.8k
我々はなぜ「層」を分けるのか〜「関心の分離」と「抽象化」で手に入れる変更に強いシンプルな設計〜 #phperkaigi / PHPerKaigi 2026
shogogg
2
540
Java 21/25 Virtual Threads 소개
debop
0
270
SourceGeneratorのマーカー属性問題について
htkym
0
220
Featured
See All Featured
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.9k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.1k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
79
New Earth Scene 8
popppiees
1
1.8k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
170
SEO for Brand Visibility & Recognition
aleyda
0
4.4k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
300
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
61
43k
30 Presentation Tips
portentint
PRO
1
260
Automating Front-end Workflow
addyosmani
1370
200k
Thoughts on Productivity
jonyablonski
75
5.1k
Transcript
FirebaseでSPAするときの SEO/OGP対応 もうこれで いいんじゃないですか 2018暫定版
自己紹介 • なんちゃってWebエンジニア • ぼっちWebサービス開発 • NOT SO BAD, LLC.
おおにし @kame_f_no7
簡単・便利なトーナメント表作成サービス
課題感
THE TOURNAMENTの話
うれしみ つらみ 無料枠が大きい 認証が簡単すぎ Functionsが便利すぎ まだ障害も多い 管理画面が弱い バックアップできない 初回表示が重い SEOが弱くなった
SPAのSEO/OGPあるある • Googleにインデックスされない • SNSシェアにOGPが反映されない botの進化で解決したのでは…?
None
ダメでした\(^o^)/ ※使用するフレームワークなどにもよるようです。
対応策
こういうのがありますよね • SSR • プリレンダリング • metaタグだけ入ったhtmlを返す ◦ botにだけ別ページ表示 ◦
URLを分けてリダイレクト
今回の方針としては • シンプルで対応工数少ないの希望 • SEOペナルティは避けたい • パフォーマンス改善は目をつぶる
やったこと 1. Functionsでindexのmetaタグ差替 2. FunctionsでRSSフィード配信 3. スプレッドシートでsitemap公開
① Functionsで index.htmlの metaタグ差し替え
firebase.json
None
事例見かけないので不安。 なにか罠あります?
心配になるところ • Functions使いすぎるのでは? • パフォーマンス落ちるのでは?
心配ポイント①:Functions使いすぎ問題 でもFunctionsのレスポンスは CDNにキャッシュできる
None
• コンテンツ部分は結局クライアント側で レンダリングしてる(のでキャッシュされ ない) • キャッシュしてるのはガワだけなので、 保存期間長くしてもよさそう 心配ポイント①:Functions使いすぎ問題
心配ポイント②:パフォーマンス問題 中央値:200~300ms
まぁいいか \(^o^)/
② Functionsで 超お手軽にRSSフィード配信
/feed でxml形式のRSSフィードを出力する
Firestoreから最新のコンテンツn件をxmlで返す
キャッシュは長めがハッピー
None
めっちゃ簡単 \(^o^)/
③ スプレッドシートで 超お手軽にsitemap配信
クロールしてもらうために sitemapも用意しないと。。 でも面倒くさい
• XMLじゃなくて改行テキストでOK →実はCSV形式でもOK • 外部ドメインに置いてもOK • スプレッドシートはCSV形式で公開でき る あまり知られてないsitemapの話
つまり?
いつからこれがsitemapではないと錯覚していた…?
None
robots.txt
更新はどうするの?
None
RSSが更新されたら自動でシートに追記
実際クロールされるの?
来すぎてquota超えた(先にblazeにしましょう)
まとめ
改めて、やったこと再掲 1. Functionsでindexのmetaタグ差替 2. FunctionsでRSSフィード配信 3. スプレッドシートでsitemap公開
Functions最高 \(^o^)/
CM
FirestoreのGUI管理アプリ作りかけです https://notsobad-jp.github.io/sequelFIRE/
Thank you.