标签: cdn

CSS中的图像路径支持CDN

我正在尝试将我们的图像部署到cdn.目前,css具有我们网站上图像的相对路径.这些路径需要支持CDN图像位置.有没有人有关于我如何做到这一点的建议?

或者,如果有人有关于部署到CDN的好教程.


这就是我最终实现这一目标的方式.

  1. 我用过SASS - http://sass-lang.com/
  2. 我有一个名为cdn.scss的mixin,其内容类似于$ image_path:"/ images /";
  3. 以sass样式导入mixin @import"cdn.scss"
  4. 像这样更新图像路径:background:url($ image_path +"image.png");
  5. 在部署时,我更改mixin.scss中的$ image_path变量,然后重新运行sass

UPDATE

我们使用bash来更新文件

cat > preprocess/sass/_cdn.scss <<EOT
\$image_path: "//CDN_URL/";
Run Code Online (Sandbox Code Playgroud)

_cdn.scss中的示例代码

$image_path: "/public/images/";
Run Code Online (Sandbox Code Playgroud)

然后它在本地默认工作,但在生产推送时,我们运行bash脚本以使用cdn位置进行更新

css cdn sass

13
推荐指数
1
解决办法
7500
查看次数

如何在cdn服务器关闭时加载bootstrap css的本地副本?

截至目前我正在使用这样的javascript

<script src="//netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/js/bootstrap.min.js"></script>
<script>    $.fn.modal || document.write('<script src="js/bootstrap.min.js">\x3C/script>')</script>
Run Code Online (Sandbox Code Playgroud)

我正在从bootstrapcdn加载bootstrap.css

<link href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.2.2/css/bootstrap-combined.min.css" rel="stylesheet">
Run Code Online (Sandbox Code Playgroud)

如果cdn服务器关闭,有人可以告诉我如何加载本地副本.?

css jquery cdn twitter-bootstrap

13
推荐指数
1
解决办法
9771
查看次数

如果CDNJS不可用,则加载本地

我有几个JavaScript文件,我在每个项目上使用,目前使用CDNJS加载它们.

但是,我试图查看是否有一种很好的方法来检查CDN是否可用,或者是否可以从CDN获得这些文件.当然,如果CDN上没有这些文件,我会在本地加载它们.

这是我目前使用的JS文件:

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<script>window.jQuery || document.write('<script type="text/javascript" src="./scripts/jquery.min.js">\x3C/script>')</script>
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/modernizr/2.6.2/modernizr.min.js"></script>
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/retina.js/1.0.1/retina.js"></script>
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/respond.js/1.3.0/respond.js"></script>

<!--[if (gte IE 6)&(lte IE 8)]>
    <script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/selectivizr/1.0.2/selectivizr-min.js"></script>
<![endif]-->
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,如果我有加载jQuery的后备,而不是任何其他文件.

任何帮助将不胜感激!

javascript jquery cdn local

13
推荐指数
1
解决办法
4789
查看次数

firebase托管是否受益于CloudFlare?

我看着https://material-ui-next.com谁似乎在firebase托管上运行并在其上使用CloudFlare.

这提出了一个问题.firebase托管网站是否需要额外的层来处理DDoS保护?据我所知,firebase提供开箱即用的SSL,CDN,DDoS和缓存?什么时候想要在其上添加CloudFlare?

ssl cdn ddos cloudflare firebase-hosting

13
推荐指数
2
解决办法
2872
查看次数

CloudFront 上的 IllegalLocationConstraintException(对于 S3)

我已经创建了一个 S3 并且我成功地在存储桶上上传了文件。现在,我试图让它与 CloudFront 一起工作,但它给了我

非法位置约束异常

ap-east-1 位置约束与此请求发送到的区域特定端点不兼容。

我的 S3 网址是:http : //my-bucket-name.s3.ap-east-1.amazonaws.com/assets/local/css/app.css(这会返回文件)

CloudFront 链接到 S3,网址为:https : //id.cloudfront.net/assets/local/css/app.css(这会返回 IllegalLocationConstraintException)


在 S3 存储桶 > 权限 >

“阻止公共访问”已关闭

“存储桶策略”是自动生成的:

{
    "Version": "2008-10-17",
    "Id": "PolicyForCloudFrontPrivateContent",
    "Statement": [
        {
            "Sid": "1",
            "Effect": "Allow",
            "Principal": {
                "AWS": "######"
            },
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::my-bucket-name/*"
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

cdn amazon-s3 amazon-web-services amazon-cloudfront

13
推荐指数
2
解决办法
5304
查看次数

CDN 如何确定要使用哪个最近的服务器?

在此输入图像描述

由于大多数 CDN 声称他们可以根据用户的位置更快地提供静态内容,我想知道他们实际上是如何做到这一点的。

例如,如果我有这样的 HTML:

<html>
<head> title </title>
<body>
</h1>Hello world</h1>

<script src="https://cdnjs.cloudflare.com/ajax/libs/react/18.0.0-alpha-464f27572-20210713/umd/react.production.min.js" integrity="sha512-ajIHzHkfQaAO507V8rEsyK4ftf96GFD7TC4znUxoKaRr7D0U/qmRDCXAXpc5DmmwoUnHcNtx6gaz14R0PHtRrg==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

CDN 提供商如何知道我位于英国并且应该连接到(例如 AWS 西欧)?他们有特殊的 DNS 设置吗?他们采用什么技术让我的浏览器知道应该在哪里请求资源?

我的猜测之一是他们有一台服务器可以读取用户的 IP 并相应地重定向,但这没有意义,因为如果服务器位于香港而我在纽约,那么往返将花费大部分时间潜伏期的时间。所以我猜他们一定有一些办法来解决 DNS 级别的这个问题。

我通过互联网进行了搜索,但找不到任何解释。你能向我解释一下吗?

ip dns tcp http cdn

13
推荐指数
1
解决办法
2260
查看次数

Google网络字体的本地回退

如果由于某种原因导致Google CDN版本无法加载,HTML5 Boilerplate将使用脚本加载jQuery的本地副本:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="js/vendor/jquery-1.9.1.min.js"><\/script>')</script>
Run Code Online (Sandbox Code Playgroud)

是否可以使用Google Web Fonts执行此类操作?含义:如果远程字体无法加载,请使用服务器上存储的字体的本地副本.

cdn webfonts

12
推荐指数
2
解决办法
4957
查看次数

使用php列出Amazon S3存储桶中所有文件的快速方法?

我有一个亚马逊s3桶,里面有成千上万的文件名.获取列出存储桶中所有文件名的所有文件或文本文件列表的最简单方法是什么?

我试过了listObject(),但似乎只列出了1000个文件.

amazon-s3-returns-only-1000-entries-for-bucket-and-all-for-another-bucket-u S3-Provider-does-not-than-than-1000-items-from-bucket

- > 列出使用适用于PHP的AWS开发工具包的密钥, 但在aws文档中我读过

max-keys - string - 可选 - 方法调用返回的最大结果数.返回的列表将不包含比指定值更多的结果,但可能返回更少的结果.默认值为1000.

AWS DOC FOR list_objects

有没有办法列出所有内容并使用AWS PHP SDK将其打印到文本文件?

可能的重复: 快速到列表所有文件在亚马逊-s3桶

我转发了这个问题,因为我正在寻找php中的解决方案.

代码:

$s3Client = S3Client::factory(array('key' => $access, 'secret' => $secret));

$response = $s3Client->listObjects(array('Bucket' => $bucket, 'MaxKeys' => 1000, 'Prefix' => 'files/'));
$files = $response->getPath('Contents');
$request_id = array();
foreach ($files as $file) {
    $filename = $file['Key'];
    print "\n\nFilename:". $filename;

 }
Run Code Online (Sandbox Code Playgroud)

php cdn amazon-s3 amazon-web-services

12
推荐指数
2
解决办法
2万
查看次数

如何在.htaccess中为CDN添加Leverage浏览器缓存?

我的代码中有以下代码 .htaccess

ExpiresActive On
ExpiresByType image/jpg "access 1 year"
ExpiresByType image/jpeg "access 1 year"
ExpiresByType image/gif "access 1 year"
ExpiresByType image/png "access 1 year"
ExpiresByType text/css "access 1 month"
ExpiresByType application/pdf "access 1 month"
ExpiresByType application/x-javascript "access 1 month"
ExpiresByType application/x-shockwave-flash "access 1 month"
ExpiresByType image/x-icon "access 1 year"
ExpiresDefault "access 2 days"
Run Code Online (Sandbox Code Playgroud)

cdn.domain.com/abc.jpg (expiration not specified)
cdn.domain.com/abc.png (expiration not specified)
Run Code Online (Sandbox Code Playgroud)

JS,CSS和其他的问题也一样.

我需要投入的.htaccess主要是达到A级.

php .htaccess caching cdn magento

12
推荐指数
2
解决办法
7360
查看次数

NextJS:如何通过 CDN 添加引导程序

我是 nextJS 的新手,我在通过 CDN 在应用程序中包含 bootstrap 时遇到了麻烦。在应用程序中的何处添加链接是最佳实践?

cdn next.js

12
推荐指数
2
解决办法
2万
查看次数