Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何将路由设置为Amazon S3的别名?_Ruby On Rails_Heroku_Dns_Routing_Amazon S3 - Fatal编程技术网

Ruby on rails 如何将路由设置为Amazon S3的别名?

Ruby on rails 如何将路由设置为Amazon S3的别名?,ruby-on-rails,heroku,dns,routing,amazon-s3,Ruby On Rails,Heroku,Dns,Routing,Amazon S3,我正在用heroku托管我的rails应用程序,并用ZerigoDNS(免费的heroku插件)管理我的DNS。我使用AmazonS3存储我的所有资产 我的S3存储桶中有一个公共文件夹,名为newsletter。 我想要http://mydomain.com/newsletter仅作为https://my-bucket.s3.amazonaws.com/newsletter 我该怎么做呢 谢谢 编辑:我希望URL不要重定向,而只是从S3文件夹读取。所以我基本上只是为https://my-buc

我正在用heroku托管我的rails应用程序,并用ZerigoDNS(免费的heroku插件)管理我的DNS。我使用AmazonS3存储我的所有资产

我的S3存储桶中有一个公共文件夹,名为
newsletter
。 我想要
http://mydomain.com/newsletter
仅作为
https://my-bucket.s3.amazonaws.com/newsletter

我该怎么做呢

谢谢



编辑:我希望URL不要重定向,而只是从S3文件夹读取。所以我基本上只是为
https://my-bucket.s3.amazonaws.com/newsletter
。有没有办法使用routes.rb或一些gem来做到这一点?

这个答案可能对您很有用:谢谢@BlueSmith,但看起来这确实是一个重定向。像
http://mydomain.com/newsletter/september/12/main.jpg
如果它们在服务器上不存在,但被重定向到S3,它们仍然可以工作吗?而且,即使他们这样做了,垃圾邮件过滤器会不会因为注意到img标记`'中的重定向而不喜欢这样做?谢谢如果不想重定向,可以编写一个动作控制器从S3读取数据,然后从动作控制器发回数据。但是性能可能不是很好。有没有办法通过重写而不是通过应用程序传递数据呢?在这里使用sendfile之类的东西没有任何意义,我处理的公共数据除了提供服务外,还需要零服务器处理。你可以配置你的bucket来响应你选择的子域:这样你的图像就可以从
http://media.mydomain.com/newsletter/x/y/main.jpg
。如果你担心垃圾邮件过滤器,他们可能会对此感到高兴。否则,不可以。如果不从特定域提供文件,则无法从该域提供文件。这个答案可能对您有用:谢谢@BlueSmith,但看起来这确实会重定向。像
http://mydomain.com/newsletter/september/12/main.jpg
如果它们在服务器上不存在,但被重定向到S3,它们仍然可以工作吗?而且,即使他们这样做了,垃圾邮件过滤器会不会因为注意到img标记`'中的重定向而不喜欢这样做?谢谢如果不想重定向,可以编写一个动作控制器从S3读取数据,然后从动作控制器发回数据。但是性能可能不是很好。有没有办法通过重写而不是通过应用程序传递数据呢?在这里使用sendfile之类的东西没有任何意义,我处理的公共数据除了提供服务外,还需要零服务器处理。你可以配置你的bucket来响应你选择的子域:这样你的图像就可以从
http://media.mydomain.com/newsletter/x/y/main.jpg
。如果你担心垃圾邮件过滤器,他们可能会对此感到高兴。否则,不可以。如果不从特定域提供文件,则无法从该域提供文件。