【问题标题】:Internal links denied access while direct access works w/ the browser URL内部链接拒绝访问,而直接访问使用浏览器 URL
【发布时间】:2018-02-13 20:55:25
【问题描述】:

我有一个位于 S3 存储桶中的静态网站。我正在使用 CloudFront 将站点保持在 https 下。浏览者可以在https下看到主页(从http重定向),不用担心。但是,当用户单击主页到从属页面(文档或博客)时,我会收到拒绝访问消息。当我从浏览器的 URL 地址直接进入该页面时,我能够正确地看到该页面。我已启用存储桶策略以包括从 http:"naked domain" 和 http://www."mydomain" 访问任何页面。我也启用了 CORS。

我很困惑为什么链接不起作用。如有任何建议,我将不胜感激。

【问题讨论】:

  • 点击链接或直接输入 URL 应该没有任何区别。这表明链接的生成方式有问题......也许你有错字?
  • 我认为您不会访问与 HTML 中相同的 exact 链接。 XML 错误输出表明您在 CloudFront 中选择源域名时从下拉列表中选择了存储桶。相反,您需要粘贴存储桶的网站托管端点主机名,如 S3 控制台中所示。
  • 没有url也没有代码,很难帮你。
  • 首先,感谢大家的反馈。您的 cmets 让我深入研究我的代码并确保所有 URL 都是正确的。我确实发现 feed.xml 文件的 URL 不正确。我更正了此问题并上传回 S3,并使边缘位置中的现有代码无效。我确实检查了 URL,并了解到虽然我能够深入到 index.html 文件,但链接只深入到文档的“主”目录。我添加了我的 _config.yml
  • 我看到的问题是@CaioProiete 和 Michael 的 URL - sqlbot 在他们的推荐中回避。 Jekyll 生成的 URL 会下降到目录级别,而我可以在 index.html 文件中添加它并且它可以工作。我更新了环境变量以反映 JEKYLL_ENV="production" 并为我纠正了主机问题。我仍然收到拒绝访问错误。

标签: amazon-s3 jekyll amazon-cloudfront


【解决方案1】:

点击链接或直接输入 URL 应该没有任何区别。这表明链接的生成方式有问题...

也许你有错字?

【讨论】:

    猜你喜欢
    • 2012-11-19
    • 1970-01-01
    • 2014-05-11
    • 2011-11-09
    • 2014-08-28
    • 2019-09-13
    • 1970-01-01
    • 2012-12-27
    • 1970-01-01
    相关资源
    最近更新 更多