0

カスタムタイプのSinglePageApplicationのページを持つumbracoを使用したWebアプリケーションがあります。このコンテンツ ページはルートにあります。

Content
  |
  |-Portal (of Type SinglePageApplication)

このページには ID (例: 1050) があり、このページには Angular アプリが含まれています。私が欲しいのは、URLが存在せず、umbracoが404をスローする必要がある場合、このページに移動し、Angularがページが見つからない状況を処理できるようにすることです。

これを実現するために、umbracoSettings.config の error404 構成を次のように変更しました。

<error404>1050</error404>

そして、これは機能します。しかし、この Web アプリケーションはすぐにリリースされ、別のデータベースを持ち、ポータル ページにはおそらく別の ID (および GUID) が割り当てられます。明らかに、umbraco が受信した 404 は正しいページに転送されなくなり、ライブ サーバーで手動で ID を変更する必要があります。そしてそれを防ぎたい。

umbracosettings.config の例には、xpath を使用できると記載されており、この問題をグーグルで検索したときに多くの例が見つかりましたが、すべて umbraco 7 用であり、それらのどれも umbraco 8 では機能しないように見えるため、このために何かが変更された可能性があると感じました。設定。残念ながら、umbraco 8 のドキュメントは現在非常に貧弱です。

私がこれまでに試したことは次のとおりです。

    <error404>//Page[nodeName='Portal']</error404>
    <error404>//SinglePageApplication[node='Portal']</error404>
    <error404>$site//SinglePageApplication[node='Portal']</error404>
    <error404>$root//SinglePageApplication[node='Portal']</error404>

おそらく私は 1 つを見逃していましたが、どちらも機能せず、すべてが醜い 404 ページになりました。

404 が発生したときに umbraco をコンテンツ ページに転送する方法は何ですか? NodeId を使用して動作するが、ページの nodeId または Guid にバインドされていないのと同じです。

4

1 に答える 1