【问题标题】:Creating more than one site in Kentico?在 Kentico 创建多个站点?
【发布时间】:2016-04-25 14:48:56
【问题描述】:

我将使用 Kentico 创建多个商店(站点)并为每个商店分配用户以添加/修改/删除他的产品,我创建了 2 个商店,第一个具有域 localhost:8080,第二个是storeone.localhost:8080 正如Kentico Doc URL 中所说的那样,我可以毫无问题地打开第一个站点,但是当我尝试切换到第二个站点时,它给了我 Bad Request - Invalid Hostname .. 任何人都可以帮我解决这个问题?? .. 如果有人帮助我了解如何使用 Kentico API 提取产品数据,我将不胜感激,因为文档只为我提供了更新/修改/删除数据库中的数据,我想知道如何使用它的附件(如图像 pdf)显示它我已经上传了。

【问题讨论】:

    标签: kentico


    【解决方案1】:

    最好的方法是使用两个不同的端口。这样做的原因是 IIS 默认绑定到端口 80。所以我要做的是将一个站点留在 80,然后在 2 处执行另一个站点。在 IIS 中进行这些绑定,然后转到 Kentico 并在 localhost 添加您的第二个站点: 2 与:8080。端口号有冲突。 Kentico 和 IIS 很“困惑”,不知道该提供哪一个。使用相同端口的唯一方法是在 Kentico 内启动和停止站点。

    【讨论】:

      【解决方案2】:

      Brenden 是正确的 - 不能有 2 个站点在同一个域上运行。您需要做的是配置IIS bindings。我经常做的是配置我的主机文件(C:\Windows\System32\drivers\etc)并添加更多规则,例如:

      127.0.0.1 localhost2
      127.0.0.1 localhost3
      

      然后我可以使用将我的 Kentico 站点绑定到这些域。不要忘记在 Kentico -> Sites 应用中更改域名。

      关于你的第二个问题:

      这取决于您是否只想获取 SKUInfo 对象或存储自定义数据(页面类型字段)的页面对象。如果您只需要 SKUInfo,您可以使用以下内容:

           // gets only corresponding SKU Info object
           var singleProduct = SKUInfoProvider.GetSKUInfo(1); // SKUID from COM_SKU table
           if (singleProduct != null)
           {
                var name = singleProduct.SKUName;
                var price = singleProduct.SKUPrice;
           }
      

      如果您需要获取包含所有自定义字段的产品,您需要像处理任何其他页面一样使用 Pages API。一个简单的例子:

          // gets sku with all custom properties
          var tree = new TreeProvider(MembershipContext.AuthenticatedUser);
          var singleProduct = tree.SelectSingleDocument(2); // DocumentID from CMS_Document table
          if (singleProduct != null)
          {
              // work with product
          }
      
          // or for multiple products
          var products = tree.SelectNodes("custom.myProductType");
          foreach (var product in products)
          {
              // work with products/pages
          }
      

      出于检索页面的目的,我强烈建议您查看包含大量示例的this documentation article

      【讨论】:

      • 我尝试在上述路径中编辑主机文件,我添加了一行 127.0.0.1:2 localhost .. 但它在 Kentico 中不起作用
      猜你喜欢
      • 2011-03-07
      • 2011-07-30
      • 2011-06-30
      • 1970-01-01
      • 2021-09-30
      • 2014-06-30
      • 1970-01-01
      • 2019-04-20
      • 1970-01-01
      相关资源
      最近更新 更多