阿里雲OSS提供了一個Webpack插件,可在Webpack打包結束後將webpack生成的文件自動上傳到阿里雲OSS中javascript
下面看看在CabloyJS中如何使用該插件html
本處從略,請參見:快速開始 | CabloyJSjava
npm install -D webpack-alioss-plugin
插件GitHub倉庫: https://github.com/borenXue/webpack-alioss-plugin
修改項目下的build文件webpack
{project}/build/config.js
ios
const AliOSSPlugin = require('webpack-alioss-plugin'); const webpackPlugins = []; webpackPlugins.push(new AliOSSPlugin({ auth: { accessKeyId: '', // 在阿里 OSS 控制檯獲取 accessKeySecret: '', // 在阿里 OSS 控制檯獲取 region: 'oss-cn-beijing', // OSS 服務節點, 示例: oss-cn-beijing bucket: 'cabloy-test', // OSS 存儲空間, 在阿里 OSS 控制檯獲取 }, ossBaseDir: 'auto_upload_ci', project: 'test001', // 項目名(用於存放文件的直接目錄) })); // title const title = 'test001'; // backend const backend = { port: 7002, hostname: '127.0.0.1', }; // front const front = { build: { title, productionSourceMap: false, uglify: true, plugins: webpackPlugins, assetsPublicPath: 'https://cabloy-test.oss-cn-beijing.aliyuncs.com/auto_upload_ci/test001/', }, dev: { title, hostname: 'localhost', port: 9092, // proxyBaseURL: 'http://localhost:7002', }, }; module.exports = { front, backend, };
名稱 | 說明 |
---|---|
front.build.plugins | 配置OSS插件,CabloyJS會自動合併到Webpack底層配置中 |
front.build.assetsPublicPath | 覆蓋Webpack底層配置中的publicPath |
因爲OSS中的字體資源與網站首頁不在同一個域名下,存在跨域問題,所以須要在阿里 OSS 控制檯配置跨域規則git
好比,網站首頁域名是:https://some.front.com
,那麼OSS跨域規則以下:github