我正在尝试做一些相对简单的事情 - 我想设置一些域和子域以重定向到我们网站的核心域,但我想将重定向放在 Cloudfront 上。除了重定向根路径之外,一切正常——这让我得到了一个 XML 文件,部分描述了 S3 存储桶。
S3 允许您设置全重定向存储桶,例如:

对此进行测试,Web 端点 (brass9-com.s3-website-us-west-1.amazonaws.com) 会执行它应该执行的操作 - 它重定向到 bras9.com。好的。
Cloudfront 允许您指向一个 S3 存储桶,但它建议您这样做的方式是错误的 - 而不是按名称指向存储桶,例如 bras9-com.s3.amazonaws.com,您需要使用上面的 Web 端点。除此之外,您可以将所有内容保留为默认值并获得良好的重定向行为。因此,像www.brass9.com/portfolio这样的路径会正确地重定向到它应该指向的位置。也很好。
然后失败的一件事是从普通的www.brass9.com重定向。它不是让你重定向,而是让你得到这个奇怪的结果:
<?xml version="1.0" encoding="UTF-8"?>
<ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Name>brass9-com</Name><Prefix></Prefix>
<Marker></Marker><MaxKeys>1000</MaxKeys><IsTruncated>false</IsTruncated>
</ListBucketResult>
Run Code Online (Sandbox Code Playgroud)
好的... 。所以这并不完全出乎意料- 因为没有默认根对象。但是我可能会指定什么默认根对象来防止这种行为?我需要指向的 S3 重定向对象的名称是什么(如果有)?或者是否有其他一些适当的配置,或者这只是 Amazon 需要修复的 Cloudfront 和 S3 交互方式中的一个错误?
可以指定 index.html 的默认根对象,但这没有任何帮助 - 它只是改变了问题。Cloudfront url 而是重定向到主站点上的 /index.html,这是一个 404(我们不使用 index.html 文件,它是一个服务器端框架驱动的站点)。我可以在服务器上放置一个 index.html,但这首先会破坏使用 Cloudfront 的小速度增益。 …
我正在寻找一种方法来将所有挂起的写入刷新到 Windows 中的磁盘,然后缓冲所有未来的写入,直到命令允许。
我想刷新 SQL Server 写入和 Windows 系统写入,然后缓冲两者。
要清楚我在做什么:
我在 EC2 上使用 Windows 2008 R2 和 SQL Server 2008 R2。我在它们所在的驱动器上运行每小时快照。当没有任何重要的变化时,这些快照就很好了——但我时不时地得到一个糟糕的快照。最坏的情况是,如果发生驱动器故障(技术上为 EBS 故障),如果我有 3 个错误的每小时快照,我将丢失 4 小时的数据。
快照已经解决了快速、差异备份和快速、轻松的恢复问题——所以我正在寻找一种方法来刷新所有内容,使其在磁盘上处于一致状态,然后暂停所有写入,直到快照完成。我很高兴为我调用的服务编写一些代码来实现这一点,但我需要知道我需要编写哪些 API/命令才能完成任务。
我知道我可以创建一个单独的卷,我不断地运行 Windows 备份,然后对其进行快照,但这会显着延长备份过程,感觉就像一个黑客。我知道 Windows 和 SQL Server 都非常擅长缓冲写入,所以这似乎是我应该能够就地完成的事情。
想法?
我经常在我的一个 EC2 实例上的 Windows 错误日志中看到此错误:
Certificate for local system with Thumbprint aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa aa is about to expire or already expired.
Run Code Online (Sandbox Code Playgroud)
EC2 似乎使用自签名证书与 EC2 网络上某处的 Active Directory 服务进行通信。它使用上面的证书与此通信,并尝试定期自动更新。看来这个机制已经失败了。
这会产生什么问题?
我该如何解决?
我试图按照此处的说明进行操作:http : //technet.microsoft.com/en-us/library/cc774595(WS.10).aspx
但未找到证书 - 指纹是 MD5 或更典型的 SHA1 哈希。我在 mmc/Certificates 中搜索了这两个条件,但没有找到。
我该如何解决这个问题,问题有多大?
每次我从 Visual Studio 2010 启动我的 ASP.Net MVC 3 应用程序时,IIS Express 都会启动并且 IE 会旋转等待。请求失败,HTTP 503 服务不可用。我在 IE 中点击刷新,请求成功。所有后续请求都会成功,直到我停止调试。下次我去开始调试时,第一个请求又失败了。
有没有其他人经历过这种情况?
在 IISExpress\applicationhost.config 我有:
<site name="ProjectName" id="6">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="c:\users\chris\dropbox\code\2010\SolutionName\ProjectName" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:80:laptop" />
</bindings>
</site>
Run Code Online (Sandbox Code Playgroud)
我的主机文件中有这个:
127.0.0.1 laptop
Run Code Online (Sandbox Code Playgroud)
我的项目设置为从 IIS Express 开始,项目 URL 设置为:
http://laptop
Run Code Online (Sandbox Code Playgroud)
很奇怪,只有第一个请求失败,也许是因为 Visual Studio 没有等待足够长的时间让 IIS Express 启动?有没有办法让它等待?
停止调试,进行更改,然后重新开始是我所做的最常见的任务之一,因此添加另一个步骤来实现这一目标非常烦人。
amazon-ec2 ×2
amazon-s3 ×1
asp.net-mvc ×1
backup ×1
certificate ×1
iis-express ×1
redirect ×1
sql-server ×1
windows ×1