2012-02-20 52 views
0

背景:我们给我们的网站用户创建筹款网页的能力。用户创建/动态页面 - 在形成网址时需要输入

TECHNOLOGIES:asp.net 3.5(网页形式),Sitecore的CMS 6.4,IIS 7

ISSUE:我试图确定哪些URL方案是最方便的用户并且是更容易维护从代码的角度来看。

想法#1:创建一个子域 - fundraising.mysite.com/johnspage

想法#2:使用主域名 - www.mysite.com/johnspage

这里有一些想法那些想到使用子域或不是。

思考

  • 我们使用Sitecore的CMS 6.4,所以我们不会创建一个单独的网站,如果我们使用一个子域。子域将仅指向主域。

  • 如果我们使用子域名或不是,我计划拥有一个处理程序,将每个筹款页面请求重定向到查找用户资金筹集信息并显示它的实际页面。 (处理程序将注入一个cookie或查询字符串)。 如果我们使用子域,我们的处理程序将更容易知道请求是为筹款页面

  • 如果我们使用子域,我希望我们的处理程序重定向到我们的实际站点。这将避免域和子域之间的Cookie问题。 (当然cookie问题可以被克服,但我想避开它们)。因此,如果请求是筹款.mysite.com/johnspage处理程序将把它变成www.mysite.com/actualpage?parameters ...(或可能使用cookies)

  • 有了子域我们可以避免这个问题用户创建一个与现有“真实”页面具有相同名称的页面。我们使用的是Sitecore CMS,因此网页实际上并不存在于Sitecore中,但我们不希望用户募集资金页面来解决sitecore项目。 (如果您对sitecore不熟悉,您可以考虑避免用户资金募集页面与您现有的某个页面具有相同名称的问题,则使用子域名可以更轻松地管理该问题。我想您也可以做这个w/oa子域只是把处理器逻辑提前放到http请求管道中)。

  • 当用户去分享他们的页面时,www.mysite.com/johnspage可能会更容易记住用户。他们可以简单地说,去mysite.com/johnspage而不是fundraising.mysite.com/johnspage。该子域使网址与主站点不同,并且发音时间更长。当然,用户可以剪切和粘贴我们提供给他们的任何网址,但是如果他们口头上共享网址,那么拥有子网域可能不方便。

问:你会用子域或指向主域名,或者他们的另一种方法,我没有想到的?你可以提供其他想法吗?

回答

1

也许我误解了你的问题,但这些陈述告诉我,你不需要为每个筹款'页面上的实际项目。

重定向每个筹款页面请求的实际网页,其中查找用户的集资信息,并将其显示

还有:

我们不希望一个用户集资页面来解决一个sitecore项目

我可能会建议你看看使用'通配符'并设置一个str ucture如:

/sitecore/content/home/fundraisers/* 

现在,您sublayout /渲染通配符页面将负责解决特定用户,获取数据并对其进行渲染。

有资源上Sitecore Wildcards如一串: http://www.sitecore.net/Community/Technical-Blogs/Getting-to-Know-Sitecore/Posts/2011/09/Wildcards-and-Data-Driven-URLs.aspx

+0

嗨肖恩 - 非常好的建议,谢谢。我会投票你的回应,但我没有声誉:)。我知道我的营销团队对url/感到兴奋,但有/募捐者/ 应该很容易出售。 – RDotLee 2012-02-20 20:31:11

+0

在阅读了Sitecore通配符之后,我们可以/ 或/募捐者/ 。 非常酷的概念。我会将其标记为答案。 – RDotLee 2012-02-20 20:42:17