Browser 使用3xx代码对目录级资源执行重定向

Browser 使用3xx代码对目录级资源执行重定向,browser,redirect,resources,directory,Browser,Redirect,Resources,Directory,我已在系统的端口80上托管了一台本地服务器。在端口8080/8081/8082上运行的本地服务器也很少。。我想根据请求所访问的目录,通过请求从端口80重定向到这些端口 例如,如果请求类似于http://127.0.0.1/test1/。。。我希望请求被重定向到http://127.0.0.1:8080/test1/ 有没有一种方法可以让我只返回301一次,然后浏览器就会明白,所有带有http://127.0.0.1/test1/前缀的请求都应该自动重定向到新的URL。我不想为test1文件夹中的

我已在系统的端口80上托管了一台本地服务器。在端口8080/8081/8082上运行的本地服务器也很少。。我想根据请求所访问的目录,通过请求从端口80重定向到这些端口

例如,如果请求类似于http://127.0.0.1/test1/。。。我希望请求被重定向到http://127.0.0.1:8080/test1/


有没有一种方法可以让我只返回301一次,然后浏览器就会明白,所有带有http://127.0.0.1/test1/前缀的请求都应该自动重定向到新的URL。我不想为test1文件夹中的每个资源发送重定向调用。

使用3xx HTTP响应代码无法完成您描述的操作。但是,您有几个选项:

  • 使用重写模块
  • 创建一个中继,只需将客户端连接到正确的服务器
  • 设置您的服务器,为每个以特定路径开头的url发送301代码(例如test1)

  • 您需要提供更多关于您使用的服务器类型的信息,以获得更具体的答案。

    谢谢您的回复。目前,我正在使用您建议的选项3。但它总是会变成一个额外的IPC。我的主要意图是避免额外的IPC。即使选项1和选项2也需要相同数量的IPC。我正在使用lighttpd。不管是哪台服务器,我都希望找到一种方法来解决HTTP代码和这些HTTP代码的浏览器默认行为的问题。我所看到的阻止IPC的唯一方法是只在应用程序服务器中使用相对URL和根URL。浏览器不会更改主机,因此它将重定向到端口8080并停留在那里。