gpt4 book ai didi

html - 为什么我的本地 html 链接会转到父文件夹而不是 .html?

转载 作者:行者123 更新时间:2023-12-02 00:06:44 25 4
gpt4 key购买 nike

编辑:Waylan 的回答成功了!谢谢!

我正在尝试压缩文档的 .html 文件以发送给客户。目标是获得与浏览实际网站相同的体验。

enter image description here

打开 .html 文件时,单击的任何链接都会转到父文件夹,而不是特定的 .html。例如,如果我单击配置页面的链接,它会将我带到这个父文件夹(如图所示),其中包含指向实际页面的 index.html。这仅在我浏览 .html 文件时在我的本地实例中发生——而不是在我导航构建的 .md(使用 MkDocs)时。

  • macOS Catalina,10.15.3
  • MkDocs
  • Markdown

最佳答案

您可能想在您的 mkdocs.yml 配置文件中设置 use_directory_urls: false

您看到的行为是基于网络服务器的一个特性。如果您请求一个目录(例如 /foo/),那么服务器将返回该目录中的索引页面(/foo/index.html)。 MkDocs 利用此功能提供“漂亮的 URL”(没有文件扩展名的 URL)。

因此,在构建站点时,MkDocs 会将每个页面转换为目录中的索引文件,并且还会重写所有内部链接以指向这些位置。只要页面托管在配置为提供索引页面(大多数默认情况下)的服务器上,这就不是问题。

但是,如果您在没有 Web 服务器的情况下在本地浏览文件,或者碰巧使用未配置为处理索引文件的服务器,那么您将看到您获得的行为。您有两个选择:

  1. 使用正确配置的服务器。
  2. 关闭 MkDoc 的功能' use_directory_urls配置设置。

要执行后者,请将以下内容添加到您的 mkdocs.yml 配置文件中:

use_directory_urls: false

然后使用mkdocs build 重建站点。现在您的页面将不再是索引文件。

请注意,虽然这允许您在没有服务器的情况下浏览文件(使用 file:///),但由于浏览器安全策略,搜索将不再在 MkDocs 站点内工作。因此,建议您始终使用服务器。这也解释了为什么默认配置需要服务器。

关于html - 为什么我的本地 html 链接会转到父文件夹而不是 .html?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60354731/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com