Mod rewrite 如何使用mod_rewrite将路径样式请求转换为虚拟托管样式?

Mod rewrite 如何使用mod_rewrite将路径样式请求转换为虚拟托管样式?,mod-rewrite,Mod Rewrite,作为与AmazonS3兼容的服务,目前我们可以处理虚拟托管风格的请求。此外,我们还希望支持遗留路径样式,例如请求(取自amazon),如下所示: DELETE /mybucket/puppy.jpg HTTP/1.1 User-Agent: dotnet Host: s3.amazonaws.com Date: Tue, 15 Jan 2008 21:20:27 +0000 x-amz-date: Tue, 15 Jan 2008 21:20:27 +0000 Authorization: AW

作为与AmazonS3兼容的服务,目前我们可以处理虚拟托管风格的请求。此外,我们还希望支持遗留路径样式,例如请求(取自amazon),如下所示:

DELETE /mybucket/puppy.jpg HTTP/1.1
User-Agent: dotnet
Host: s3.amazonaws.com
Date: Tue, 15 Jan 2008 21:20:27 +0000
x-amz-date: Tue, 15 Jan 2008 21:20:27 +0000
Authorization: AWS 0PN5J17HBGZHT7JJ3X82:k3nL7gH3+PadhTEVn5EXAMPLE
DELETE /puppy.jpg HTTP/1.1
User-Agent: dotnet
Host: mybucket.s3.amazonaws.com
Date: Tue, 15 Jan 2008 21:20:27 +0000
x-amz-date: Tue, 15 Jan 2008 21:20:27 +0000
Authorization: AWS 0PN5J17HBGZHT7JJ3X82:k3nL7gH3+PadhTEVn5EXAMPLE
我想将请求转换为虚拟托管样式,如下所示:

DELETE /mybucket/puppy.jpg HTTP/1.1
User-Agent: dotnet
Host: s3.amazonaws.com
Date: Tue, 15 Jan 2008 21:20:27 +0000
x-amz-date: Tue, 15 Jan 2008 21:20:27 +0000
Authorization: AWS 0PN5J17HBGZHT7JJ3X82:k3nL7gH3+PadhTEVn5EXAMPLE
DELETE /puppy.jpg HTTP/1.1
User-Agent: dotnet
Host: mybucket.s3.amazonaws.com
Date: Tue, 15 Jan 2008 21:20:27 +0000
x-amz-date: Tue, 15 Jan 2008 21:20:27 +0000
Authorization: AWS 0PN5J17HBGZHT7JJ3X82:k3nL7gH3+PadhTEVn5EXAMPLE
如何做到这一点?有人建议我可以使用Apache mod_rewrite,但目前它对我来说很复杂,我希望有人能帮助我


谢谢。

您是发送请求还是接收请求?在后一种情况下,您将无法直接更改请求,但您可以使用mod_rewrite“模拟”第二个请求。@David Zaslavsky:感谢您的关注,我收到了请求,假设我是与Amazon S3兼容的服务,我想知道Amazon S3如何处理这两种不同类型的请求?