KDPのhrefエラーはなぜ出るのか?原因と修正手順

「KDP href エラーが出たが、どこを直せばよいのかわからない」と悩む方は少なくありません。

特にEPUB入稿では、目次や本文のリンクが少しでもずれると、Kindle Previewerで警告やエラーとして表示されることがあります。

この問題は感覚で直そうとすると長引きやすい一方で、確認する場所を順番どおりに絞れば、比較的安定して解決しやすい不具合です。

Zero出版でも、AI生成原稿をEPUB化した案件や、外注フォーマット後の再入稿で同種の相談を繰り返し受けてきました。

この記事では、KDPの公式ガイドラインで示されている考え方を軸に、hrefエラーの代表例であるE24010の見方、原因の切り分け方、再発を防ぐ安全な確認手順まで整理して解説します。

💡 この記事でわかること
  • ✅ KDP href エラーの主な原因とE24010の意味
  • ✅ toc.xhtmlやnav.xhtml、本文ファイルで確認すべき修正ポイント
  • ✅ 修正後に再発を防ぐための安全なチェック手順

KDP href エラーはリンク先の不一致を直せば解決しやすい問題です

KDP href エラーは、Amazon KDPが提示する単一の正式名称というより、EPUB内のリンク参照が正しく解決されない状態をまとめて指す検索語として使われることが多いです。

なかでも代表的なのが、Kindle Previewerで表示されるE24010: Hyperlink not resolved in tocです。

これは、目次のリンク先が見つからない、またはリンク先として適切に認識されない場合に起きると案内されています。

したがって、最初に行うべきことは、エラー文と対象ファイルを確認し、hrefの参照先ファイル名・ID・表示状態を照合することです。

逆に、エラーコードを見ずに原稿全体をやみくもに作り直すのは、修正箇所を増やして別の不具合を生む危険があります。

最初に見るべき場所は目次ファイルとリンク先です

E24010は目次リンクの不整合を疑うのが基本です

Amazonのガイドラインでは、目次の各項目をクリック可能なHTMLリンクにし、出版前に正しく移動するか確認するよう案内しています。

そのため、E24010が出ている場合は、まずやに相当する目次ファイルを重点的に確認するのが合理的です。

たとえば、目次側にhref="chapter01.xhtml#ch1"と書かれているなら、参照先のchapter01.xhtmlが実際に存在し、その中にid="ch1"がある必要があります。

この対応関係が崩れると、Kindle Previewerはリンク未解決として検出する可能性があります。

ファイル名とIDの一致が最重要です

hrefエラーで最も多いのは、ファイル名のずれとIDの不一致です。

章の並べ替えや再書き出しをしたあと、古いリンクが目次に残るケースは珍しくありません。

Zero出版での検証でも、Word原稿から自動変換したEPUBを後から手修正した案件では、章ファイル名がchapter1.xhtmlからchapter01.xhtmlに変わっていたのに、目次だけ旧名のまま残っていた例がありました。

この場合、見た目では章が存在していても、リンク参照は失敗します。

また、ch1とCh1のような大文字・小文字の違いも見落とされやすいポイントです。

人の目で同じに見えても、EPUB内部では別物として扱われる可能性があります。

非表示要素にIDが付いているとエラーになることがあります

Amazonは、リンク先要素にdisplay:noneまたはvisibility:hiddenが指定されていることを、E24010の原因例として案内しています。

つまり、ID自体は存在していても、その要素が非表示扱いなら、リンク先として適切に認識されない場合があります。

これは、装飾用の空タグや非表示見出しにアンカーを置いているケースで起こりやすいです。

対策としては、IDを実際に表示される見出しタグや章コンテナに移すのが安全です。

本文中の内部リンクや外部リンクも無関係ではありません

検索では「hrefエラー」とひとまとめにされがちですが、問題は目次だけとは限りません。

KDPは本文中のリンクも、読者が期待した場所へ移動できることを重視しています。

そのため、目次エラーを直した後も、本文中の「前の章へ」「参考資料へ」などの内部リンク、外部URLの記述も確認したほうがよいでしょう。

特にAIで生成した原稿を整形した場合、リンク文字列だけ残って実体のない参照先が混ざることがあります。

修正の進め方は順番を守ると失敗しにくくなります

確認はエラー文から逆算します

最初に、Kindle PreviewerまたはKDPのプレビューで表示されたエラー文をそのまま控えます。

E24010であれば、目次ファイルとリンク先の照合に集中できます。

ここで重要なのは、問題を「EPUB全体の不具合」と広げすぎないことです。

エラーコードごとに対象範囲を絞るほうが、修正精度は高くなります。

目次ファイルのhrefを一覧で確認します

次に、nav.xhtmlまたはtoc.xhtmlを開き、すべてのhrefを確認します。

理想は、目次にある各リンクを表計算やメモに抜き出し、参照先ファイルとIDが存在するか一つずつ照合する方法です。

Zero出版では、10章以上ある本ではこの一覧化を省略しないようにしています。

理由は、1か所直しても別の章で旧リンクが残っていることが多く、手当たり次第の修正では再入稿回数が増えやすいためです。

修正後は必ず実機に近い表示で試します

Amazonは、出版前にKindle Previewerでエラーや警告を確認し、修正するよう勧めています。

加えて、本文内の目次リンクと、プレビュー画面側のナビゲーション目次の両方を確認することも重要です。

見た目上は直っていても、タップ時に少しずれた位置へ飛ぶことがあります。

特に固定レイアウト寄りのEPUBや、画像とテキストが混在する本では、リンク先位置の違和感も読者体験に影響します。

よくある修正パターンを具体例で見ると判断しやすくなります

例1 章ファイル名だけが古いまま残っているケース

目次にhref="chapter03.xhtml#sec1"とあるのに、実ファイルがchapter3.xhtmlになっているケースです。

この場合、IDが正しくてもファイル名の参照で失敗します。

外注先の納品データや、変換ソフトを変えた後の再書き出しで起こりやすい現象です。

修正は単純で、目次側のファイル名を実ファイルに合わせるか、本文ファイル名を目次に合わせて統一します。

確認ポイント

  • 拡張子が.xhtmlで統一されているか

  • 数字のゼロ埋め有無が一致しているか

  • 大文字・小文字が混在していないか

例2 IDが削除されたまま目次だけ残っているケース

本文の見出しを整理した際に、id="ch2"を持つタグを削除したのに、目次には#ch2が残っているケースです。

これはAI下書きを人が再編集した後や、見出しタグを一括置換した後に起こりやすいです。

修正時は、リンク先にしたい見出しへ再度IDを付ける方法が一般的です。

ただし、空のspanタグだけにIDを付けるより、h2やh3など実際に表示される要素へ付与するほうが安全です。

例3 非表示スタイルが原因になっているケース

デザイン調整のために、見出しの一部や補助要素へdisplay:noneが設定されているケースです。

Amazonの案内でも、こうした非表示要素はリンク先として不適切になる場合があると示されています。

Zero出版で確認した案件では、EPUB編集ソフトで自動生成された空見出しにIDが付き、CSS側で非表示になっていたため、PreviewerでE24010が出ていました。

この場合は、IDを本文中の表示見出しへ移すだけで解消しました。

レイの相談ノート
💬 読者からの相談:
EPUBを何度入れ直してもE24010が消えず、目次リンクを全部作り直すべきか迷っています。本文は普通に表示されるので、どこが悪いのか判断できません。
💡 レイのアドバイス:

全部を作り直す前に、目次ファイルのhref一覧と、各リンク先のID一覧を並べて照合してください。

私が相談を受けたケースでは、原因の多くは1文字違いか、削除済みIDの残存でした。

また、本文が表示されていても、リンク先が非表示要素だったためにエラーになっていた例もあります。

見た目が正常でも内部参照は壊れていることがあるため、表示確認とソース確認を分けて考えるのが有効です。

例4 目次は正常でも本文内リンクが壊れているケース

目次のE24010を直した後、本文中の「この章へ戻る」などの内部リンクが別の位置へ飛ぶことがあります。

これは検索意図から外れやすい盲点ですが、読者体験には直結します。

KDPはリンクの正確性を重視しているため、目次だけで安心しないことが重要です。

本文リンクの放置は、読者の離脱やレビュー低下につながる可能性があります。

再発防止には入稿前の安全プロトコルが有効です

修正後に行うべき確認順は決めておくべきです

hrefエラーは、一度直っても別章で再発しやすい不具合です。

そのため、入稿前の確認順を固定しておくと安定します。

  1. Kindle Previewerのエラー文を確認する

  2. nav.xhtmlまたはtoc.xhtmlのhrefを一覧で確認する

  3. 参照先ファイルとIDの存在を照合する

  4. リンク先要素が非表示になっていないかCSSを確認する

  5. 目次リンクを実際にクリックして移動先を試す

  6. 本文中の内部リンクと外部リンクも点検する

Zero出版では、この手順を「安全なAI出版プロトコル」の一部として固定化しています。

AI生成や外注を挟むほど、見た目は整っていても内部構造が崩れる確率が上がるためです。

目次は読者の操作性そのものです

Amazonは、目次をリンク付きにし、本文の冒頭付近に置くことを推奨しています。

また、紙の本のページ番号をそのまま記載しないことも案内されています。

つまり、目次は単なる飾りではなく、読者が本を使いやすくするための重要なナビゲーションです。

hrefエラーの修正は審査対策だけでなく、購入後の満足度を守る作業でもあります。

迷ったらエラーコードと参照先の一致確認に戻れば大丈夫です

KDP href エラーは、漠然とした不具合に見えても、実際にはリンク参照の整合性を確認すれば原因を絞り込みやすい問題です。

特にE24010が出ているなら、目次ファイルのhref、参照先ファイル名、ID、非表示要素の有無を順に確認するのが基本です。

修正後はKindle Previewerで、本文内目次とナビゲーション目次の両方を試してください。

この流れを守れば、KDP EPUB 目次リンク エラーやnav.xhtml リンク 修正、toc.xhtml アンカー 確認といった悩みも整理して対処しやすくなります。

もし今まさに入稿直前で不安があるなら、まずは1冊分のEPUBを開き、目次のhrefと本文IDを一覧で照合してみてください。

小さな確認ですが、再入稿の手戻りや読者トラブルを減らす最も堅実な一歩になると考えられます。