【发布时间】:2014-08-07 21:56:54
【问题描述】:
我正在尝试为 Node.js 中的 HTML 页面构建简单的服务器。我的问题是,当我导航到(例如)http://localhost:8080/someDirectory 时,浏览器认为 someDirectory 是文件(实际上,它被重定向到 someDirectory/index.html)。
所以当我使用<script src="./script.js"></script> 时,它会尝试使用http://localhost:8080/script.js,而不是http://localhost:8080/someDirectory/script.js。
我能想到的唯一解决方案是将浏览器重定向到/someDirectory/(末尾带有斜杠)。然后,浏览器正确地理解它是目录而不是文件。
我的问题是,我不想让我的服务器变慢,因为双重请求(客户端被重定向,发送另一个请求,然后最终获得网页)。是否可以发送发送页面并通知浏览器更改,而不是使用 302 标头进行重定向?
编辑:当我访问在 Apache 服务器上运行的某个页面时,当我输入
http://localhost/someDirectory 时,尾部斜杠会自动附加。我只是好奇它是如何完成的(没有额外的 PHP 或 javascript)。
【问题讨论】:
-
使用 express.js 处理服务 html
-
那些只是拼写错误,还是您实际上使用的是
http:/...而不是http://?
标签: javascript node.js url redirect