After all the tough works of migration etc. Just realise that I need to serve the content using CNAME (e.g media.abc.com). The bucket name needs to start with media.abc.com/S3/amazon.com to ensure it works perfectly.
Just realise that S3 doesn't allow direct rename from the console.
Are there any ways to a workaround for this?