我安装了2个站点的Sitecore 6.2,配置如下:
<site name="eu-website" hostName="dev.mysite.eu" virtualFolder="/" physicalFolder="/" rootPath="/sitecore/content/Europe" startItem="/Home" database="web" domain="extranet" allowDebug="true" cacheHtml="true" htmlCacheSize="10MB" registryCacheSize="0" viewStateCacheSize="0" xslCacheSize="5MB" filteredItemsCacheSize="2MB" enablePreview="true" enableWebEdit="true" enableDebugger="true" disableClientData="false" />
<site name="us-website" hostName="dev.mysite.us" virtualFolder="/" physicalFolder="/" rootPath="/sitecore/content/USA" startItem="/Home" database="web" domain="extranet" allowDebug="true" cacheHtml="true" htmlCacheSize="10MB" registryCacheSize="0" viewStateCacheSize="0" xslCacheSize="5MB" filteredItemsCacheSize="2MB" enablePreview="true" enableWebEdit="true" enableDebugger="true" disableClientData="false" />
网站正在按预期响应网址,即:
http://dev.mysite.eu/About
- &gt;解析为:/sitecore/content/Europe/About
但是,我遇到LinkManager问题。它生成了错误的网址,例如:
http://dev.mysite.eu/Europe/About
正如您所看到的,它包括网站的名称,这是不正确的,并导致404。
我正在使用LinkManager:
var urlOptions = new UrlOptions();
urlOptions.SiteResolving = true;
string url = LinkManager.GetItemUrl(item, urlOptions);
任何人都知道我哪里出错了?
感谢。
答案 0 :(得分:3)
这可能无法修复它,但尝试将保存网站的节点拉出startItem
:
变化:
rootPath="/sitecore/content/Europe" startItem="/Home"
要:
rootPath="/sitecore/content" startItem="/Home/Europe"