Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Sander Houttekier 114 posts 163 karma points
    Aug 12, 2009 @ 18:11
    Sander Houttekier
    0

    advanced hostnames with multilanguage issue

    Hi,

    we are setting up a website with a rather extensive amount of urls linked to it. and to make it even more advanced it also has multilanguages for most of the subsites.

    structure:

    CONTENT (node in umb)   FIRM level  (with www.firm.com bound on IIS level)
    >BRANCH with www.branch.com hostname in umb
    >>NL with www.branch.nl
    >>> dutch content
    >>FR with www.branch.fr
    >>> french content
    >>DE with www.branch.de
    >>> german content
    >>EN with www.branch.com/en
    >>> english content
    >BRANCH2 with www.branch2.com hostname in umb
    >>NL with www.branch2.nl
    >>> dutch content
    >>FR with www.branch2.fr
    >>> french content
    >>DE with www.branch2.de
    >>> german content
    >>EN with www.branch2.com/en
    >>> english content
    >BRANCH3 with www.branch3.com hostname in umb
    >>NL with www.branch3.nl
    >>> dutch content
    >>FR with www.branch3.fr
    >>> french content
    >>DE with www.branch3.de
    >>> german content
    >>EN with www.branch3.com/en
    >>> english content

     

    remark: a top level domain wil not always be available for every language of a branch (in the above case the english nodes)

    possible solutions we were thinking about:

    1) making subdomains like  en.branch3.com  fr.branch3.com for every language to create a fallback when top level domains are not available.
    we set the usedomainprefixes to true and hide toplevelnodeFromPath to false
    issue: the cultures are not correct when you use www.branch3.com/nl (should have same effect as www.branch3.nl but does not)

     

    2) second option was to not have any hostname bound to the actual language nodes, and to make the language specific urls as redirects on the IIS level to www.branch3.com/nl   and   */fr ... etc.
    this requires the hideTopLevelNodeFromPath to be True, so we do not get  www.branch3,com/branch3/nl
    but this makes the higher level domains not working. (www.firm.com/branch4) (when branch 4 does not have its own domainname it needs www.firm.com/branch4 while the branch4 part is hidden.)

     

    is there a solution for 1 of the 2 above options, or can anyone point us into the direction of a 3rd (preferably working) option.

     

     

     

    techy info:

    • Umbraco Version : 4.0.2
    • asp.net version : 2.0
    • Windows and iis version : windows 2003 server with IIS 6

     

  • Adz 4 posts 32 karma points
    Aug 13, 2009 @ 10:38
    Adz
    0

    Sounds very strange in deed!

    I am sure that your (1) should work and it sounds like a bug, as it used to work on early versions of Umbraco v4.

     

    Preview

    Provided that you have set the domain to www.branch.com/nl and the language to the appropriate setting, then it should work!  Perhaps you have uncovered a bug?

     

    One thing I did discover is that umbraco:NiceUrl doesnt work if you set domain names on nodes which are deeply nested (I think your example is OK, but if you went one node deeper it might not work)

     

  • Adz 4 posts 32 karma points
    Aug 13, 2009 @ 10:39
  • Gerty Engrie 130 posts 490 karma points c-trib
    Aug 13, 2009 @ 10:47
    Gerty Engrie
    0

    So in option 1:

    www.firm.com is OK
    www.firm.com/branch is OK  = same as www.branch.com also OK
    www.firm.com/branch/nl is OK
    www.branch.nl is also OK

    but, http://www.branch.com/nl the page works but shows in the wrong language :( (is in the language of the www.branch.com)

    we tried adding www.branch.com/nl to it but it doesn't help
    Also when a sub of the branch is not having a domain attached niceurl builds up a wrong url (www.branch.com/branch/nl)

    And when having multiple branches with their hostnames attached root nodes work great but child's fail. So www.branch.com and www.branch1.com work but www.branch1.nl does not work, www.branch.nl does work.

     

    In umbraco itself on the properties tab there is also a strang thing  http://www.branch.com/http://www.branch.nl ...

     

    Anyone have some advise please?

     

    Thanks

  • Gerty Engrie 130 posts 490 karma points c-trib
    Aug 14, 2009 @ 09:45
    Gerty Engrie
    0

    The problem of www.branch.com/nl is solved, had to edit the source of umbraco (codeplex issue here )

    But now the next problem... for some reason, when surfing to www.branch2.nl the wrong data is loading, umbraco loads in the data from www.branch.nl. Same thing happens with all other 2nd level nodes, he always loads data from the first root node.

    requestHandler Redirecting to domain: www.branch2.nl, nodeId: 1080
    umbracoRequestHandler xpath: '/node [@urlName = "nl"]'
    umbracoRequestHandler Just before xPath query (False, '/node [@urlName = "nl"]')
    umbracoRequestHandler pageXPathQueryStart: '/root'
    umbracoRequestHandler After xPath query
    umbracoRequestHandler Access checking started
    umbracoRequestHandler Page not protected
    umbracoRequestHandler Access checking ended
    umbracoInit Done handling request
    umbracoPage Element loaded: pageTitleShort
    umbracoPage Element loaded: umbracoNaviHide
    umbracoPage Element loaded: umbracoSitemapHide
    umbracoPage Pagedata loaded for NL (ID: 1062, Version: 08239f14-f103-4f6b-aa4d-9af0c82de38a)
    default.aspx Culture changed to nl-BE

    In this example the nodeid 1080 was the page i was trying to load, but then for some reason it is loading in the data from 1062.

     

  • Jesper Ordrup 1019 posts 1528 karma points MVP
    Aug 20, 2009 @ 17:48
    Jesper Ordrup
    0

    I've got the same problem. Isn't this a problem in any V4 installation?

    Does anyone have a patch?

    Thanks

    Jesper

  • Jesper Ordrup 1019 posts 1528 karma points MVP
    Aug 21, 2009 @ 12:46
    Jesper Ordrup
    0

    My solution. Ensure theres no overlap in hostnames.

    This will work:

    website.com/uk (lang uk)
    website.com/de (lang de)

    This won't work:

    website.com (lang uk)
    website.com/de (lang de)

    Any request to website.com/de will return "lang uk". Reason for this is that website.com partially matches website.com/de.

    /Jesper

     

Please Sign in or register to post replies

Write your reply to:

Draft