我有一个网页 ( https://smartystreets.com/contact ),它使用 jQuery 通过 CloudFront CDN 从 S3 加载一些 SVG 文件。
在 Chrome 中,我将打开一个隐身窗口以及控制台。然后我将加载页面。当页面加载时,我通常会在控制台中收到 6 到 8 条类似于以下内容的消息:
XMLHttpRequest cannot load
https://d79i1fxsrar4t.cloudfront.net/assets/img/feature-icons/documentation.08e71af6.svg.
No 'Access-Control-Allow-Origin' header is present on the requested resource.
Origin 'https://smartystreets.com' is therefore not allowed access.
Run Code Online (Sandbox Code Playgroud)
如果我对页面进行标准重新加载,甚至多次,我仍然会遇到相同的错误。如果我这样做,Command+Shift+R那么大多数,有时是全部图像将在没有XMLHttpRequest错误。
有时即使在图像加载后,我也会刷新并且一个或多个图像不会加载并XMLHttpRequest再次返回该错误。
我已经检查、更改并重新检查了 S3 和 Cloudfront 上的设置。在 S3 中,我的 CORS 配置如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>*</AllowedOrigin>
<AllowedOrigin>http://*</AllowedOrigin>
<AllowedOrigin>https://*</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<MaxAgeSeconds>3000</MaxAgeSeconds>
<AllowedHeader>Authorization</AllowedHeader>
</CORSRule>
</CORSConfiguration>
Run Code Online (Sandbox Code Playgroud)
(注意:最初只有<AllowedOrigin>*</AllowedOrigin>,同样的问题。)
在 CloudFront 中,分配行为设置为允许 HTTP Methods: GET, …
我已经安装了 phpmyadmin 并在我的 LEMP 服务器(php 7)上对其进行了符号链接。但是当我转到主机名/phpmyadmin 时,它会在标题栏上返回一个带有 phpmyadmin 图标的空白页面。
浏览器控制台中的 3 个错误:
无法加载资源:net::ERR_INCOMPLETE_CHUNKED_ENCODING
未捕获的 ReferenceError: $ 未定义
未捕获的 ReferenceError:未定义 PMA_commonParams
我尝试了很多解决方案,但无法找到问题所在:(
服务器配置:
server {
# listen 80 ;
# listen [::]:80 default_server;
# SSL configuration
#
listen 443 ssl default_server;
listen [::]:443 ssl default_server;
#
# Note: You should disable gzip for SSL traffic.
# See: https://bugs.debian.org/773332
#
# Read up on ssl_ciphers to ensure a secure configuration.
# See: https://bugs.debian.org/765782
#
# Self signed certs generated by the ssl-cert …Run Code Online (Sandbox Code Playgroud) 我使用 nginx 将 https 请求代理到我的应用程序服务器(目前在 8443 上运行)。
这个应用服务器提供动态页面,其中一些包括 jquery 缩小版。
页面错误,因为 jquery 似乎被截断了......是否有文件大小限制或其他什么?
我的 nginx 配置如下:
server {
listen 443;
server_name my_serv.com;
ssl on;
ssl_certificate certificate.pem;
ssl_certificate_key privatekey.pem;
keepalive_timeout 70;
location / {
proxy_pass https://localhost:8443;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_buffering off;
proxy_buffers 8 8k;
}
}
Run Code Online (Sandbox Code Playgroud) 我们目前正在重新设计我们的网站。我们聘请进行重新设计的公司提倡使用 jQuery 来动态呈现页面。我们的 SEO 专家的印象是,许多大公司可能会在其代理中阻止 jQuery,以防止其用户访问 Facebook 等网站。
这是你知道的吗?
如果这对 SF.SE 来说是题外话,请原谅我!
我应该这样做吗
https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js
或者
http://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js
当我使用 Google 的 CDN 包含 jquery 时?