利用CDN加速react webpack打包后的文件详解

网友投稿 456 2023-02-16


利用CDN加速react webpack打包后的文件详解

此文不介绍webpack基本配置,如果对基本配置有疑问请查阅官方文档。

1、配置webpack.config.js

将output.publicPath改成上传到的cdn地址, 例(对应上面上传配置):

publicPath: "https://your_base_cdn_url" + process.env.NODE_ENV + "/cdn/"

打包

NODE_ENV=production node_modules/webpack/bin/webpack.js -p

这样打包后的文件例如有

index.html

12345678.src.js

12345678.src.css

...

此时,打包后生成的index.html文件中已经引入了cdn文件。

2、上传文件至CDN

在部署脚本中写一段上传cdn的脚本, 例:

echo "start uploading to upyun"

HOST=v0.ftp.upyun.com

USER=uploader/your-username

PASS=your-password

cd build

files=$(ls | grep -v 'index.html' | xargs)

ftp -inv $HOST <

user $USER $PASS

mkdir /$node_env/cdn

cd /$node_env/cdn

mput $files

bye

EOF

cd ..

echo "finish uploading to upyun"

将主页文件上传至服务器,使用nginx代理

server {

listen 80;

server_name your_server_name;

access_log /var/log/nginx/your_project.log;

root /var/www/your_project/production/current;

location / {

try_files $uri /index.html =404;

add_header Pragma no-cache;

expires -5y;

}

lohttp://cation ~ \.(js|css)$ {

expires 360000;

add_header Cache-Control "max-age=360000;";

}

}

访问http://your_server_name即可访问使用CDN加速后网页。

user $USER $PASS

mkdir /$node_env/cdn

cd /$node_env/cdn

mput $files

bye

EOF

cd ..

echo "finish uploading to upyun"

将主页文件上传至服务器,使用nginx代理

server {

listen 80;

server_name your_server_name;

access_log /var/log/nginx/your_project.log;

root /var/www/your_project/production/current;

location / {

try_files $uri /index.html =404;

add_header Pragma no-cache;

expires -5y;

}

lohttp://cation ~ \.(js|css)$ {

expires 360000;

add_header Cache-Control "max-age=360000;";

}

}

访问http://your_server_name即可访问使用CDN加速后网页。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:接口测试记录(接口测试举例说明)
下一篇:webpack中使用iconfont字体图标的方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~