diff --git a/public/react/scripts/build.js b/public/react/scripts/build.js index 022e8074f..fe18e93e5 100644 --- a/public/react/scripts/build.js +++ b/public/react/scripts/build.js @@ -195,7 +195,29 @@ function generateNewIndexJsp() { let cdnHost = 'https://shixun.educoder.net' cdnHost = 'https://ali-cdn.educoder.net' cdnHost = '' - var result = data.replace('/js/js_min_all.js', `${cdnHost}/react/build/js/js_min_all.js?v=${newVersion}`) + + + var mainRegex = /<script type="text\/javascript" src="\/react\/build\/.\/static\/js\/main.([a-zA-Z0-9]{8,}).js"><\/script>/ + var matchResult = data.match(mainRegex) + var code = ` + <script> + (function() { + var _host = '' + if (window.location.host == '47.96.87.25:48080') { + _host = 'http://testali-cdn.educoder.net/react/build/' + } else if (window.location.host == 'www.educoder.net') { + _host = 'https://ali-newweb.educoder.net/react/build/' + } + document.write('<script type="text/javascript" src="' + _host + 'js/js_min_all.js"><\\/script>'); + document.write('<script type="text/javascript" src="' + _host + 'static/js/main.${matchResult[1]}.js"><\\/script>'); + })() + </script> + ` + var jsMinAllRegex = /<script type="text\/javascript" src="\/js\/js_min_all.js"><\/script>/ + // <script type="text/javascript" src="/js/js_min_all.js"></script> + var result = data + .replace(jsMinAllRegex, '') + // .replace('/js/js_min_all.js', `${cdnHost}/react/build/js/js_min_all.js?v=${newVersion}`) // .replace('/js/js_min_all_2.js', `${cdnHost}/react/build/js/js_min_all_2.js?v=${newVersion}`) // ${cdnHost} 加了cdn后,这个文件里的字体文件加载会有跨域的报错 ../fonts/fontawesome-webfont.eot @@ -204,10 +226,11 @@ function generateNewIndexJsp() { .replace('/css/iconfont.css', `${cdnHost}/react/build/css/iconfont.css?v=${newVersion}`) .replace(/\/js\/create_kindeditor.js/g, `${cdnHost}/react/build/js/create_kindeditor.js?v=${newVersion}`) + .replace(mainRegex, code) // .replace('/react/build/./static/css/main', `${cdnHost}/react/build/./static/css/main`) // .replace('/react/build/./static/js/main', `${cdnHost}/react/build/./static/js/main`) - .replace(/https:\/\/testeduplus2.educoder.net/g, ''); + // .replace(/https:\/\/testeduplus2.educoder.net/g, ''); // .replace(/http:\/\/testbdweb.educoder.net/g, ''); // .replace('/css/css_min_all.css', '/react/build/css/css_min_all.css'); diff --git a/public/react/src/App.js b/public/react/src/App.js index e6f55f5d2..b40af3e0b 100644 --- a/public/react/src/App.js +++ b/public/react/src/App.js @@ -1,4 +1,5 @@ import React, {Component} from 'react'; +import './public-path'; import logo from './logo.svg'; import './App.css'; import {LocaleProvider} from 'antd' diff --git a/public/react/src/public-path.js b/public/react/src/public-path.js new file mode 100644 index 000000000..fb82840d4 --- /dev/null +++ b/public/react/src/public-path.js @@ -0,0 +1,6 @@ +/*global __webpack_public_path__ */ +if (window.location.host == '47.96.87.25:48080') { + __webpack_public_path__ = 'http://testali-cdn.educoder.net/react/build/' +} else if (window.location.host == 'www.educoder.net') { + __webpack_public_path__ = 'https://ali-newweb.educoder.net/react/build/' +} \ No newline at end of file