2012-02-03 4 views
6

나는 umbraco 구조화에 관한이 질문을 가지고 있으며 어디서나 대답을 찾을 수 없습니다.Umbraco를 서브 페이지에서 기본값으로 설정하는 방법은 무엇입니까?

일반적으로 Umbraco에서는 루트 사이트를 트리의 첫 번째 노드로 기본 설정합니다. 우리는

    • 페이지 1
    • 2 페이지

기본 페이지가 집에있을 것이다 (그래서 www.mysite.com 가정을 가리 킵니다)가 그렇다면 .

www.mysite.com이 page1 또는 page2를 가리킬 수 있도록 어떻게 변경합니까? 이 구조가 있으면 어떻게됩니까?

  • 래퍼
    • 인덱스
    • 페이지 1
    • 2 페이지

나는 www.mysite.com/index 똑바로 가고 www.mysite.com을 원한다 .aspx

그 규칙을 찾을 수 없습니다. 다시 쓰기/리디렉션 규칙을 삽입하려고 시도했지만 아무 것도 변경하지 않았습니다.

은 Umbraco에서

답변

4

재 지정은 일반적으로 사이트의 루트 노드에서 리디렉션하려는 경우를 제외하고는 매우 간단한 일입니다 도와주세요.

방법 1 :

이 여기 최선 설명 :

그래서 콘텐츠 피커의 데이터 유형, 루트 노드에 umbracoInternalRedirectId 속성을 추가하여 가능 http://our.umbraco.org/wiki/reference/umbraco-best-practices/umbracoredirect. 사용자를 리디렉션하지 않고 대신 현재 URL 내에 해당 페이지의 내용을로드합니다. 따라서 리디렉션하려는 페이지의 내용을 제공하는 동안 URL은 http://www.mysite.com으로 유지됩니다.

방법 2 :

당신이 정말 http://www.mysite.com/에서 http://www.mysite.com/index.aspx로 변경합니다. 보통 다음 코드를 루트 노드의 템플릿에 추가합니다.

<%@ Master Language="C#" MasterPageFile="~/umbraco/masterpages/default.master" AutoEventWireup="true" %> 
<asp:Content ContentPlaceHolderID="ContentPlaceHolderDefault" runat="server"> 
</asp:Content> 
<script type="c#" runat="server"> 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     Response.Redirect("http://www.mysite.com/index.aspx");  
    } 
</script> 

ASP.Net이 리디렉션을 담당합니다. 하지만 노드 이름 변경/너무 잘 움직이는 것은 분명히 처리되지 않습니다.

+0

와우를 추가 !!!! 리디렉션 속성을 추가했는데 효과가있었습니다. 감사합니다! – Nick

+0

걱정할 필요가 없습니다. XSLT를 오류없이 저장할 수 있는지 확인하십시오 (심지어 사용하는 경우). 위의 링크에서 설명한 것처럼 Umbraco의 리디렉션 시스템을 사용하면 루트 노드에서 너무 까다로울 수 있습니다. –

+0

나는 XSLT 대신에 면도기만을 ​​사용하고 있으며 사이트는 완벽하게 렌더링 된 것 같습니다. – Nick

0

URL 다시 쓰기 구성/UrlRewriting을 사용하여 모든 페이지로 리디렉션 할 수 있습니다.설정

이 역할

그 일
<add name="role1" 
    virtualUrl="^~/$" 
    destinationUrl="~/home" 
    redirect="Application" 
    redirectMode="Permanent" 
    ignoreCase="true" /> 
관련 문제