5

以下に示すようにポンド記号への正規リンクを設定することは正当ですか、それとも物理的なページ名を入力する必要がありますか?

<link rel="canonical" href="#">

これをテストすると、ポンド設定は検証エラー (ala #development=1) を生成しません。私のシナリオでは、このレイアウト ファイルを使用するページには、代替の「通常の HTML」バージョンはありません。唯一のバージョンは AMP HTML バージョンになります。

追加のコンテキストとして、AMP HTML を使用する MVC サイトを試しています。レイアウト ファイルをシンプルに保つために、子ページ名を抽出して href 属性に適用するよりも、シャープ記号を使用することをお勧めします。次のようなコードを使用して、部分ビューに URL を適用する方法を知っています。

<link rel="canonical" href="@HttpContext.Current.Request.Url.AbsoluteUri">

代わりにポンド記号を使用するのが正当な AMP HTML であるかどうか、私はただ興味があります。ありがとうございました。

4

2 に答える 2

7

ドキュメントから:

必要なマークアップ

AMP HTML ドキュメント:

  • <link rel="canonical" href="$SOME_URL" />AMP HTML ドキュメントの通常の HTML バージョンを指すタグを head 内に含めるか、そのような HTML バージョンが存在しない場合はそれ自体を指すタグを含めます。

したがって、 を使用する代わりにhref="#"、AMP 仕様との一貫性を保つために、それ自体を指すようにする必要があります。

于 2015-11-02T21:05:19.353 に答える
2

バリデーションは進化し​​ており、バリデーターは現在すべての問題をキャッチしているわけではありません。「#」または相対 URL を使用する際の問題は、このドキュメントが cdn.ampproject.org などの他の場所で提供されると、その相対 URL が目的の正規を指しなくなることです。代わりに絶対 URL を使用してください<link rel=canonical href="URL">

于 2016-02-14T21:00:51.233 に答える