Я думаю, что то, что вы видите, является побочным эффектом функции в Umbraco, которая должна поддерживать шаблон, который больше всего используется при создании веб-сайта Umbraco.
Лучшая практика при создании веб-сайтов Umbraco -создать тип документа «Веб-сайт / корень / сайт» и поместить его в корень иерархической структуры контента.Под этим типом документа вы размещаете каждую из своих страниц как прямые дети.Это позволяет вам задавать имена хостов и культуру на вашем сайте, а также позволяет хранить весь сайт в одном «комплекте», а также позволяет создавать несколько дочерних сайтов на одном веб-сайте Umbraco.Это довольно распространенная практика для структурирования вашего сайта таким образом.
Однако - как вы и ожидаете - это даст ваши URL, такие как domain.com/website/account/register
, поскольку Website
теперь является фактическим узлом контента в Umbraco.Так как это на самом деле не то, что хотелось бы - в Umbraco есть встроенная функция, позволяющая скрыть узел верхнего уровня от пути URL.Это приводит к тому, что ваши URL в этом случае равны domain.com/account/register
.
Если вы все же рассматриваете свой сайт - эта функция приводит к тому, что ваша страница регистрации получает URL: /register
, поскольку часть /account
является верхним уровнемузел, который будет игнорироваться при генерации URL.
Это поведение запускается параметром umbracoHideTopLevelNodeFromPath
, который можно найти в web.config
вашего сайта (true
по умолчанию).
Однако я бы порекомендовал вам не изменять этот параметр, а вместо этого добавлять корневой узел для своего сайта, поскольку в будущем вам будет проще управлять им - это также лучший способ структурировать сайт.
Это должно привести к тому, что URL будут сгенерированы так, как вы ожидаете.Дочерние узлы будут иметь URL-адреса, отражающие их имя и местоположение в дереве содержимого.