实施 Sitecore Multisite Robots.txt 文件

2024-01-26

如何为同一 Sitecore 解决方案上托管的每个网站实现不同的 robots.txt 文件。我想从 sitecore 项目中动态读取 robots.txt。


您需要执行以下步骤:

1) 创建并实现您的自定义通用 (.ashx) 处理程序。

2) 在 web.config 文件中将以下行添加到该部分

3) 导航到该部分并在此处添加

4)在主页项目上,您将有“机器人”字段(备忘录或多行字段,而不是富文本字段) 您的自定义通用处理程序将如下所示:

 public class Robots : IHttpHandler
{

    public virtual void ProcessRequest(HttpContext context)
    {
        private string defaultRobots = "your default robots.txt content ";

        string robotsTxt = defaultRobots;

        if ((Sitecore.Context.Site == null) || (Sitecore.Context.Database == null))
        {
            robotsTxt = defaultRobots;
        }
        Item itmHomeNode = Sitecore.Context.Database.GetItem(Sitecore.Context.Site.StartPath);
        if (itmHomeNode != null)
        {
            if ((itmHomeNode.Fields["Robots"] != null) && (itmHomeNode.Fields["Robots"].Value != ""))
            {
                robotsTxt = itmHomeNode.Fields["Robots"].Value;
            }
        }

        context.Response.ContentType = "text/plain";
        context.Response.Write(robotsTxt);

    }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

实施 Sitecore Multisite Robots.txt 文件 的相关文章

随机推荐

  • boost::multi precision::uint128_t sizeof 是 24

    基础数学 128 8 16 的说法不同 我有点失望 想要一些答案 因为从我习惯的情况来看 该符号 type num of bytes t 不仅描述了您可以放入变量的数据量 但是也跨平台固定可变大小 恕我直言 后者更为重要 我究竟做错了什么
  • 在 Node JS 集群之间划分快速路由

    我在 Node JS 应用程序中有大量路由 我正在尝试扩展到多个 CPU 核心 通过 NodeJS 集群 我的计划是让不同的工作人员处理一组不同的express js 路线 例如 api requests handled by Worker
  • 使用Python从gmail发送电子邮件

    我正在尝试通过构建对我有用的程序 脚本来自学如何编程 我正在尝试重新编写我在网上找到的脚本 以使用 python 脚本通过 gmail 发送电子邮件 Source http kutuma blogspot com 2007 08 sendi
  • 错误 TS2304:找不到名称“ImageCapture”且已安装 @types/w3c-image-capture

    我正在使用 Ionic 4 和 Angular 7 开发 PWA 我需要访问网络摄像头 如果存在 然后在画布中渲染 在这个过程中我使用图像捕捉 https developer mozilla org en US docs Web API I
  • 设置驱动器卷标签

    我正在开发一个小型实用程序 我想在其中更改连接到计算机的闪存驱动器上的卷标 我知道 DriveInfo 能够做到这一点 但我不知道如何实现它 如果有人有代码示例 我将非常感激 这是我目前拥有的 DriveInfo allDrives Dri
  • 如何在 ListView 构建器中创建与 flutter 中旁边的标签一致的按钮列表?

    我需要制作这个应用程序 在 flutter 中使用 ListView 显示历史人物列表 到目前为止我已经能够列出历史人物的名字了 我的下一个任务是为名称旁边的每个历史人物制作一个按钮 这会将您带到另一个屏幕 其中包含有关该特定历史人物的信息
  • Python中的成对叉积[重复]

    这个问题在这里已经有答案了 如何获取交叉产品列表pairs来自Python中任意长列表的列表 Example a 1 2 3 b 4 5 6 crossproduct a b 应该产生 1 4 1 5 1 6 您正在寻找itertools
  • Flutter readAsBytesSync 文件读取不完整以进行 base64 编码

    项目清单 我正在尝试通过 HTTP POST 使用 base64 编码将 JPG 图像 由模拟器中的 ImagePicker 捕获 发送到 AWS REST API 但是 readAsBytesSync 操作仅读取图像的 头 部分 我已经测
  • C# String.IsNullOrEmpty:好还是坏?

    在工作中发生一次我将 String IsNullOrEmpty 与 Session 变量一起滥用的事件之后 我的一位同事现在拒绝接受我对 String IsNullOrEmpty 的使用 经过一番研究 显然 MSDN 上列出了 IsNull
  • 用于检查 zip 文件是否损坏的 Python 脚本

    如何检查 zip 文件是否损坏 我有一个包含 10 张 jpg 图像的 zip 文件 我能够提取其中 8 张图像 zip 中的两个图像已损坏 我无法提取它们 有没有办法在 Python 脚本中检查这一点 此代码将抛出异常 如果 zip 文件
  • 如何获取准确的浏览器名称和版本?

    我尝试了一些解决方案 但无法获得确切的名称和版本 我正在尝试以下代码 browserAgent SERVER HTTP USER AGENT echo browserAgent 上述代码的输出 Mozilla 5 0 X11 Linux i
  • Handsontable:如何更改渲染函数中的单元格值

    我有类似的代码
  • 将 pdb 文件包含到我的 nuget (nupkg) 文件中

    我正在使用 MSBuild 生成我的 nuget 包 我是否需要设置任何命令 以允许它包含我的 pdb文件 以便在调试时进入源代码 我不希望将源文件包含到拉入 nuget 包的项目中 生产 最简单的配置方法是有一个Directory Bui
  • 计算三次贝塞尔曲线长度的廉价方法

    三次贝塞尔曲线长度的解析解 看似不存在 但并不代表 编写廉价的解决方案并不存在 我所说的 便宜 是指 50 100 ns 或更短 范围内的时间 有人知道类似的事情吗 可能分为两类 1 错误较少 如 1 但代码速度较慢 2 错误更多 例如 2
  • 高效地从 PHP 数组中选取 n 个随机元素(无需随机播放)

    我有以下代码可供选择 n数组中的元素 array in PHP shuffle array result array splice array 0 n 给定一个大数组但只有几个元素 例如5 out of 10000 这相对较慢 所以我想对其
  • 反应引导 + purgeCss + next.js

    PurgeCss 删除了我的项目中使用的react bootstrap css 类 我正在使用 Next js 框架 app js import styles style scss import React from react impor
  • 我的 kafka docker 容器无法连接到我的 Zookeeper docker 容器

    我想同时使用confluent kafka and confluent zookeeper并在单个 Ubuntu 服务器上运行它们 我正在使用以下配置 docker run e ZOOKEEPER CLIENT PORT 2181 name
  • Conda 不会删除包

    我的命令是否做错了什么 我无法删除 Keras conda remove name myEnv keras Collecting package metadata repodata json done Solving environment
  • CORS:预检通过,主请求完成 w/200,但浏览器仍然存在 Origin 错误

    我正在向运行 Express 的节点服务器发送 CORS ajax 请求 在服务器日志和 js 控制台中 我可以看到预检 OPTIONS 请求成功 然后 主请求也在服务器上成功 并以 200 和我认为正确的标头进行响应 但是 在 Chrom
  • 实施 Sitecore Multisite Robots.txt 文件

    如何为同一 Sitecore 解决方案上托管的每个网站实现不同的 robots txt 文件 我想从 sitecore 项目中动态读取 robots txt 您需要执行以下步骤 1 创建并实现您的自定义通用 ashx 处理程序 2 在 we