【发布时间】:2013-09-10 00:22:07
【问题描述】:
请原谅尴尬的标题:我正在构建一个简单的网络服务器(不要问...)并且有这个问题:
浏览器请求mydomain.com/MyFolder
我的服务器发现这是一个文件夹,所以转而提供mydomain.com/MyFolder/index.html
到目前为止一切正常,除了 index.html 有指向 mycss.css 的链接,但浏览器将其作为顶级文件 mydomain.com/mycss.css 而不是 mydomain.com/myFolder/mycss.css 请求。
是否有一些 HTTP 标头需要设置以指示已提供不同的页面?我尝试返回 Content-Location: /myFolder/index.html,但没有任何明显的成功。
index.html 基本上包含这个:
<link rel="stylesheet" href="mycss.css" />
【问题讨论】:
-
恐怕http头在这里没有用,但是
base标签可能对你有帮助。 -
@kirilloid - 所以你说这是一个 HTML 问题而不是服务器问题?是不是每个服务器都受此影响?
-
您是否尝试过返回
301 Moved Permanently状态而不是 200 ok?然后发送Location标头并将斜杠添加到 URL 的末尾。喜欢:Location: mydomain.com/MyFolder/并且暂时不提供 index.html,浏览器将在 url 末尾使用斜杠再次请求,然后您才提供 de html 文件 -
@Delta,完美,谢谢。把它作为一个答案,我会接受的。
标签: http-headers