【问题标题】:Disallow to open and crawl HTML files禁止打开和抓取 HTML 文件
【发布时间】:2012-08-11 10:25:16
【问题描述】:

我在根目录和单独的目录中都有 HTML 文件,这些文件通过 SSI 包含到其他页面中。

  1. 如何禁止通过直接 URL 打开此 HTML 文件,但同时仍让 SSI 可以访问它们? .htaccess 还是别的什么?一般可以吗?

  2. 如何禁止搜索引擎机器人抓取此 HTML 文件?如果我将它们包含在其他页面的 SSI 中,但站点上没有指向它们的任何直接链接,搜索引擎机器人会看到它们吗?

【问题讨论】:

  • 不太确定 SSI 访问权限,但您可以使用 robots.txt 表示您不希望某些文件/目录被索引。
  • 好,如果有人直接输入 SSI 包含的 HTML 文件的地址,那么真实的人呢?
  • 之前有a similar question。似乎你不能做你想做的事 - 虽然我不是特别喜欢它,但那里有一个“替代方案”。
  • @norfavrell 不知道怎么写? 如果你想隐藏包含的文件,你可以在 .htaccess 文件中使用 Options -Indexes 指令禁用目录索引。
  • Options -Indexes 只会导致 Apache 不生成它的 directory index

标签: html seo search-engine bots web-crawler


【解决方案1】:

创建一个 robots.txt 并添加以下内容:

User-agent: * 
Disallow: /foldername-you-want-to-disallow/ # hides all files in this directory from bots
Disallow: /hidden.html # hides a specific file in the root dir from bots
Disallow: /foldername/hidden.html # hides a specific file in a subdir from bots

您可以创建一个 .htaccess 文件并将其上传到您要隐藏的目录中。包括 以下:

Options -Indexes

Order deny,allow
Deny from all

您仍然可以通过 SSI 调用它们,但任何 http 直接请求都将被阻止。

【讨论】:

  • 谢谢你,Cynthia,如果他们将直接地址输入到我用来通过 SSI 包含的 HTML 文件中,那么真实的人呢?在这种情况下也有帮助吗?如果还想禁止机器人从根目录访问其他一些 HTML 页面,我应该使用什么?有类似User-agent: * Disallow: /folder/ Disallow: /page1.html Disallow: /page2.html 的东西吗?如果我没有指向我想要禁止的页面和文件夹的链接,机器人会看到或找到它们吗?
  • @user1586029:您可以像您尝试过的那样有多个禁止。看看here
  • @Cynthia 太棒了!我还从 norfavrell 链接中读到,我们可以使用 Options -Indexes 以某种方式隐藏文件:如果要隐藏包含的文件,可以使用 .htaccess 上的 Options -Indexes 指令禁用目录索引文件,但是。也许你知道怎么做?
  • 在我的答案中编辑了我的 .htaccess 代码以包含 -indexes 指令。 :)
  • 通过电子邮件发送给我(在我的个人资料中),并附上错误消息以及如何调用包含的示例。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-16
  • 2015-04-22
  • 2017-08-26
  • 1970-01-01
  • 2022-08-13
  • 2017-06-06
相关资源
最近更新 更多