Amazon web services AWS CloudFront能否同时提供动态和静态内容?
我们有一个基于Drupal7的电子商务网站,我正试图在AWS中托管该网站。我在想,AWS CloudFront可以同时用于静态和动态内容吗?也许,创造两个起源或者类似的东西?不过这只是一个猜测。 使用CDN的原因是为我们的js、css和图像服务。这些文件存储在EFS中。我没有选择S3,因为我发现它很麻烦,我需要在Drupal上安装另一个S3FS模块并对其进行配置。简言之,就是不想走那条路。此外,我所在的地区没有EFS,因此我不得不在爱尔兰托管该站点,因此需要CDN。 然而,是否可以在CloudFront之外同时提供静态和动态内容 另一个问题是,CloudFront是否支持自签名证书?在测试期间,我创建了一个带有自签名证书的测试域,但当我将其提供给CloudFront时,它会抛出错误。我认为使用自签名是不可能的,是吗 顺便说一句,我有53点到Cloudfront DNS的路由 已更新 让我解释一下我执行的整个步骤:Amazon web services AWS CloudFront能否同时提供动态和静态内容?,amazon-web-services,amazon-cloudfront,Amazon Web Services,Amazon Cloudfront,我们有一个基于Drupal7的电子商务网站,我正试图在AWS中托管该网站。我在想,AWS CloudFront可以同时用于静态和动态内容吗?也许,创造两个起源或者类似的东西?不过这只是一个猜测。 使用CDN的原因是为我们的js、css和图像服务。这些文件存储在EFS中。我没有选择S3,因为我发现它很麻烦,我需要在Drupal上安装另一个S3FS模块并对其进行配置。简言之,就是不想走那条路。此外,我所在的地区没有EFS,因此我不得不在爱尔兰托管该站点,因此需要CDN。 然而,是否可以在CloudF
[root@ip-10-1-36-192 ec2-user]# curl https://xxxx.cloudfront.net
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>ERROR: The request could not be satisfied</TITLE>
</HEAD><BODY>
<H1>ERROR</H1>
<H2>The request could not be satisfied.</H2>
<HR noshade size="1px">
CloudFront wasn't able to connect to the origin.
<BR clear="all">
<HR noshade size="1px">
<PRE>
Generated by cloudfront (CloudFront)
Request ID: Fvf4qfAwuzBRS4J_SA6p1I-UYnvqSuZxdvXV1E6HuGEMGOxWPeORsQ==
</PRE>
<ADDRESS>
</ADDRESS>
</BODY></HTML>You have new mail in /var/spool/mail/ec2-user
[root@ip-10-1-36-192 ec2-user]# curl -Ik https://website.com
HTTP/1.1 200 OK
Cache-Control: no-cache, must-revalidate
Content-Language: en
Content-Type: text/html; charset=utf-8
Date: Fri, 24 Feb 2017 05:50:46 GMT
Expires: Sun, 19 Nov 1978 05:00:00 GMT
Server: Apache/2.4.25 (Amazon) OpenSSL/1.0.1k-fips mod_fcgid/2.3.9
X-Content-Type-Options: nosniff
X-Frame-Options: SAMEORIGIN
X-Generator: Drupal 7 (http://drupal.org)
X-UA-Compatible: IE=edge,chrome=1
Connection: keep-alive
[root@ip-10-1-36-192 ec2用户]https://xxxx.cloudfront.net
错误:无法满足请求
错误
这项要求未能得到满足。
CloudFront无法连接到源站。
由cloudfront生成(cloudfront)
请求ID:Fvf4qfAwuzBRS4J_SA6p1I-UYnvqSuZxdvXV1E6HuGEMGOxWPeORsQ==
若我禁用CDN模块,从网站的外观来看一切都很好
是否可以同时提供静态和动态内容
云锋
是的,CloudFront还提供动态内容。这可以是PHP内容等。
您的来源可以是S3或web服务器(aws实例)等。请阅读CloudFront文档以了解其工作原理的详细信息
是的,CloudFront支持自签名证书。您可以详细说明设置它所采取的步骤。或者,请检查此处的文档:问题在于自签名证书。我已经从Comodo提供了一个免费的SSL,并且能够对其进行配置。瞧!CloudFront能够识别它,我的内容也可以从中获取。
谷歌网页速度指数也从74跳到了85
感谢@Michael-sqlbot为我澄清了这一点
你这里至少有两个问题。第一个问题的答案——如文中所述——应该从谷歌搜索或堆栈溢出中显而易见,因此我想知道你是否真的有一个问题,你没有提到静态+动态,而是问它是否“可能”。关于证书的第二个问题需要详细说明。CloudFront在源站上不支持此功能,仅在发行版上支持此功能。@Michael sqlbot签出我更新的帖子不要将-k
与curl一起使用。这是--不安全的的别名,它忽略无效或不受信任的SSL配置。显然,如果您必须使用该选项,这意味着您的SSL配置无效,而502错误正是CloudFront在这种情况下应该执行的操作。CloudFront不允许到源站的不安全连接。我在中解决了一个可能类似的错误配置。哦。。。“将自签名证书添加到chrome和我的系统”您不能在源站上使用自签名证书。CloudFront必须能够验证源代码的身份,而这在自签名证书中是不可能的。谢谢@Michael sqlbot。我从Comodo提供了一个免费的SSL证书,现在我可以看到我的图片,js和css来自CloudFront。但有一个问题是,对我来说,使用CDN的整个想法是为了提高我网站的加载速度。当我在Google PageSpeed Insight中看到它时,它并没有太大变化。你能猜出原因是什么吗?
Origin Domain Name
xxxxelb-1927396229.eu-west-1.elb.amazonaws.com
Origin ID
PPRD-kirana11elb
Origin SSL Protocols
TLSv1.2
TLSv1.1
TLSv1
SSLv3
Origin Protocol Policy
HTTP Only
HTTPS Only
Match Viewer
HTTP Port
80
HTTPS Port
443
Path Pattern
Default (*)
Origin
PPRD-kirana11elb
Viewer Protocol Policy
HTTP and HTTPS
Allowed HTTP Methods
GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE
Cached HTTP Methods
GET, HEAD +OPTIONS
Forward Headers
Whitelist
Whitelist Headers
CloudFront-Forwarded-Proto
Host
Object Caching
Use Origin Cache Headers
Minimum TTL
0
Maximum TTL
31536000
Default TTL
86400
Forward Cookies
All
Query String Forwarding and Caching
Forward all, cache based on all
Smooth Streaming
No
Restrict Viewer Access
No
Compress Objects Automatically
No
[root@ip-10-1-36-192 ec2-user]# curl https://xxxx.cloudfront.net
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>ERROR: The request could not be satisfied</TITLE>
</HEAD><BODY>
<H1>ERROR</H1>
<H2>The request could not be satisfied.</H2>
<HR noshade size="1px">
CloudFront wasn't able to connect to the origin.
<BR clear="all">
<HR noshade size="1px">
<PRE>
Generated by cloudfront (CloudFront)
Request ID: Fvf4qfAwuzBRS4J_SA6p1I-UYnvqSuZxdvXV1E6HuGEMGOxWPeORsQ==
</PRE>
<ADDRESS>
</ADDRESS>
</BODY></HTML>You have new mail in /var/spool/mail/ec2-user
[root@ip-10-1-36-192 ec2-user]# curl -Ik https://website.com
HTTP/1.1 200 OK
Cache-Control: no-cache, must-revalidate
Content-Language: en
Content-Type: text/html; charset=utf-8
Date: Fri, 24 Feb 2017 05:50:46 GMT
Expires: Sun, 19 Nov 1978 05:00:00 GMT
Server: Apache/2.4.25 (Amazon) OpenSSL/1.0.1k-fips mod_fcgid/2.3.9
X-Content-Type-Options: nosniff
X-Frame-Options: SAMEORIGIN
X-Generator: Drupal 7 (http://drupal.org)
X-UA-Compatible: IE=edge,chrome=1
Connection: keep-alive