Shopifyで"CNAMEレコードがありません"と表示される原因とその解決法(Cloudflare編)

Shopifyで"CNAMEレコードがありません"と表示される原因とその解決法(Cloudflare編)
Photo by 傅甬 华 / Unsplash

はじめに

Shopifyで独自ドメイン(今回は shop.sakashita.page)を接続した際に、「CNAMEレコードがありません」というエラーが出続けて困った経験、ありませんか?

実際に私もこのエラーに直面し、Cloudflare側の設定を見直すことで解決したので、その詳細と原因、対処法をこの記事でまとめます。


結論:Cloudflareの"CNAMEフラット化"が原因だった!

Shopifyの管理画面でCNAMEレコードが正しく設定されているにもかかわらず警告が出る原因は、 Cloudflareの"CNAMEフラット化(CNAME Flattening)"という機能が有効になっていたからでした。

この機能が有効だと、CNAMEレコードの“名前”を返すのではなく、解決済みのIPアドレス(Aレコード)を返してしまうため、 Shopify側では「CNAMEが見つからない」と判断されてしまいます。


CNAMEフラット化とは?

CNAME(Canonical Name)レコードは、あるドメイン名を別のドメイン名に別名として割り当てる仕組みです。

例えば:

shop.example.com → shops.myshopify.com

このように“名前 → 名前”の関連を作るのがCNAMEですが、DNSの仕様上、ルートドメイン(apex domain)にはCNAMEを使えないという制約があります。

そこで登場するのがCNAMEフラット化です。

CloudflareのようなDNSサービスでは、ユーザーがCNAMEを設定していても、外部からの問い合わせに対してはIPアドレス(Aレコード)として返すことができます。 これにより、

  • ルートドメインでもCNAMEのような運用ができる
  • ブラウザのレスポンスが高速化する という利点があります。

ただし、“CNAMEがあるかどうか”をチェックするサービス(今回のShopifyなど)には、CNAMEが存在しないように見えてしまうというデメリットがあります。

メリット:

  • 高速な名前解決が可能
  • ApexドメインでもCNAME的な挙動を実現できる
  • 一部のCDNやクラウドサービスと相性が良い

デメリット:

  • CNAMEレコードがクライアントから見えない
  • Shopifyのように“CNAMEの存在”を前提とする仕組みと相性が悪い

私の設定環境|サブドメインのセットアップ

そもそもですがサブドメインのセットアップは正常に行われていることを確認してください。以下の公式ページを参考にしてください。

そして以下が私の設定環境です。

  • ドメインプロバイダー:Cloudflare
  • 使用ドメイン:shop.sakashita.page
  • Shopifyストアの接続先:shops.myshopify.com
  • DNSレコード:
    • shop サブドメインに CNAME を設定
    • CNAME先は shops.myshopify.com
    • プロキシ(オレンジの雲):オフ(DNSのみ)
    • それでも警告が消えない状態でした

試したこと一覧(すべて失敗)

  • Aレコードを使ってみる → Shopifyは動くが、警告は消えず
  • サポートに連絡 → 「www を使え」など的外れな回答
  • ローカルのDNSキャッシュ削除 → 解決せず

解決した方法

Cloudflareの設定画面にある以下の項目をオフにしました:

"すべての CNAME レコードの CNAME フラット化"

これをオフにすることで、DNSクライアントやShopify側からもCNAMEが明示的に見えるようになり、 即座にShopify管理画面上の警告が消えました。

成功画面のキャプチャ

フラット化ってそんなに悪いの?

実はそんなことはなく、通常のWebサイト運営では高速化や安定性のために有効な機能です。 ただし今回のように、「CNAMEの存在」を検出するシステムとの相性が悪いことがあるというだけ。


まとめ

  • Shopifyが"CNAMEがない"と表示するのはCNAMEレコードがないのではなく、見えていないだけの可能性がある
  • Cloudflareを使っている場合は"CNAMEフラット化"をオフにすることで解決できる
  • Shopifyサポートよりも自力で調査した方が早い場合も…(笑)

おまけ:技術的検証に使ったコマンド(Windows PowerShell)

# DNSキャッシュをクリア
Clear-DnsClientCache

# CNAMEレコードの確認
Resolve-DnsName shop.sakashita.page -Type CNAME

# Aレコードの確認
Resolve-DnsName shops.myshopify.com -Type A

この記事が役立つ人

  • Shopifyでカスタムドメインを使っていて、接続はできているのにエラーが出る人
  • Cloudflareを使ってDNSを管理している人
  • サポートに問い合わせたけど解決しなかった人

もしこの記事が役立ったら、ぜひシェアやブックマークをお願いします! あなたの時間を少しでも節約できますように ☕

Read more

怪物の口に幸福が吸い込まれる

幸福の総量を最大化する。それが正しいと言われてきた。しかし1974年、ロバート・ノージックはたった一つの問いでその前提を破壊した。もしある存在が、他の全員よりも圧倒的に多くの快楽を得られるなら、功利主義は全員の取り分をその「怪物」に差し出すことを要求する。 あなたの幸福は計算の端数だった。切り捨てられた。 幸福を貪る口 1974年、ロバート・ノージックは『アナーキー・国家・ユートピア』のなかで一つの思考実験を置いた。 功利主義は、効用の怪物の可能性によって困惑させられる。怪物は、他の人々の犠牲から、その人々が失う以上に圧倒的に大きな効用の増加を得る。 仕組みは単純だ。功利主義の原則に従えば、社会全体の幸福を最大化する資源配分が「正しい」。ここに一人、あらゆる資源からとてつもない快楽を引き出す存在が現れたとする。りんご一個で他の百人分の快楽を得る。映画を一本見れば千人分の歓喜を感じる。 功利主義はこの怪物にすべてを差し出すことを要求する。他の全員が飢えても、怪物の快楽が総量を上回る限り、それが「最善」だと計算は告げる。 ノージックが示したかったのは、功利主義が論理的に正し

By Sakashita Yasunobu

綱を引く手が一本ずつ消えていく

あなたは集団のなかで、少しずつ消えている。 それは比喩ではない。測定可能な事実だ。19世紀末、フランスの農学者マクシミリアン・リンゲルマンは、人が集団で綱を引くとき、一人あたりの力が確実に減少することを発見した。人数が増えるほど、個人は薄まる。誰のせいでもなく、誰も怠けているわけではなく、ただ構造がそうさせる。 もしあなたがいま、何かのチームに属しているなら、あなたはすでに全力を出していない。そしてそのことに、おそらく気づいてもいない。 綱を引く手が教えたこと リンゲルマンの実験は素朴だった。 1880年代から1900年代初頭にかけて、彼は農業機械の効率を研究する過程で、人間が集団で水平方向に荷を押したり引いたりする際のパフォーマンスを測定した。その結果は1913年に報告されている。一人で綱を引くとき、その人間は持てる力をすべて発揮する。二人になると、一人あたりの出力は約93%に落ちる。三人で85%。八人になると、49%。半分以下だ。 この数字の意味を考えてみてほしい。八人で綱を引いているとき、あなたは一人のときの半分も力を出していない。しかもそのことに自覚がない。全員が

By Sakashita Yasunobu

嘘が真実を食い尽くす朝

「この文は嘘である」 この一文を前にして、あなたは立ち往生する。もし真だとすれば、文の内容に従って偽になる。もし偽だとすれば、「嘘である」という主張が間違っていることになり、真になる。真だと仮定しても偽だと仮定しても、反対の結論にたどり着く。出口がない。 これは言葉遊びではない。2300年以上にわたってこの問いに取り組んできた哲学者と論理学者たちは、いまだに合意に至っていない。解決策はいくつも提案されてきた。どれも、別の問題を抱えている。 あなたが自分自身について何かを語ろうとするとき、同じ構造がそこにある。 循環の入口 試しにやってみてほしい。「この文は嘘である」が真か偽か、判定する。 真だと仮定する。この文は「嘘である」と主張しているのだから、偽になる。仮定と矛盾する。 では偽だと仮定する。「嘘である」という主張が偽ということは、嘘ではない。つまり真になる。やはり仮定と矛盾する。 どちらに転んでも矛盾する。そしてこの矛盾は、推論のどこかでミスを犯したから生じたのではない。前提そのものに埋め込まれている。 エピメニデスの不発弾 よく混同されるが、古代ギリシアの

By Sakashita Yasunobu

何でも飾れる額縁だけが残った

1917年、マルセル・デュシャンは既製品の男性用小便器に「R. Mutt」と署名し、「泉(Fountain)」と名づけてニューヨーク独立芸術家協会の展覧会に出品した。拒否された。それだけの話だ。だが「それだけ」のはずの出来事が、それ以降のすべての芸術を汚染した。美しさも技巧も素材の選択も関係ない。署名ひとつ、提示の身振りひとつで、便器が「芸術」を名乗れる。そしてその瞬間から、「芸術とは何か」という問いは回答不能になった。回答不能のまま、100年以上が過ぎている。 目で見えないものが芸術を決める 1964年、アンディ・ウォーホルはスーパーマーケットに並ぶブリロの箱と見た目がまったく同じ「ブリロ・ボックス」をギャラリーに置いた。哲学者アーサー・ダントーは、この事態に根本的な問いを見出した。視覚的に区別できない二つの対象のうち、片方だけが芸術である。では芸術を芸術にしているのは何なのか。 ダントーの答えは「アートワールド」だった。芸術作品を芸術たらしめるのは知覚可能な性質ではなく、理論と批評と歴史が編み上げた解釈の共同体、その「理論的雰囲気」なのだと。あなたには何も見えていない。文字

By Sakashita Yasunobu