export default function (context) { console.log("initialize........."); let proto = "https"; let url = ""; let cookies = ""; // Server-side if (process.server) { const { req, redirect } = context; console.log(req.url) let host = req.headers.host; // console.log("initialize...........req.............header"); let proto = "https"; if (req.headers["x-forwarded-proto"]) { proto = req.headers["x-forwarded-proto"]; } else if (req.headers["x-scheme"]) { proto = req.headers["x-scheme"]; } else if (host.indexOf("local.") != -1) { proto = "http"; } url = proto + "://" + host; cookies = req.headers.cookie; console.log("server", req.headers) } // Client-side if (process.client) { // console.log("client side............"); url = document.location.href; let proto = "http"; if (url.indexOf("https://") != -1) { proto = "https"; } cookies = document.cookie; console.log("client", cookies) } let groups = {} try { let regx = new RegExp( "((?[a-z0-9_\\-]+)\\.)?(?(www|prod|test|local|test-rooter|test-jishuin|prod-rooter|prod-jishuin|rooter|jishuin|app|test-kaifain|prod-kaifain|test-job|job|prod-job|local-rooter|local-job|local-jishuin|local-kaifain))\\.proginn\\.com(\\:(?\\d+))?", "gim" ); // console.log(regx); console.log(url); groups = regx.exec(url).groups; } catch (e) { //失败默认设置为线上环境 const { app } = context.app.$deviceType if (app) { groups = { env: "app" } } else { groups = { env: "www" } } } let api = "", jishuinUrl = "", rooterUrl = "", siteUrl = "", kaifainUrl = "", jobUrl = "", urlType = ""; // console.log(groups); if (groups) { let { branch, env, port } = groups; switch (env) { case "www": api = "https://www.proginn.com"; siteUrl = "https://www.proginn.com"; jishuinUrl = "https://jishuin.proginn.com"; kaifainUrl = "https://kaifain.proginn.com"; rooterUrl = "https://rooter.proginn.com"; jobUrl = "https://job.proginn.com"; break; case "jishuin": api = "https://jishuin.proginn.com"; siteUrl = "https://www.proginn.com"; jishuinUrl = "https://jishuin.proginn.com"; kaifainUrl = "https://kaifain.proginn.com"; rooterUrl = "https://rooter.proginn.com"; jobUrl = "https://job.proginn.com"; break; case "job": api = "https://job.proginn.com"; siteUrl = "https://www.proginn.com"; jishuinUrl = "https://jishuin.proginn.com"; kaifainUrl = "https://kaifain.proginn.com"; rooterUrl = "https://rooter.proginn.com"; jobUrl = "https://job.proginn.com"; break; case "app": api = "https://app.proginn.com"; siteUrl = "https://app.proginn.com"; jishuinUrl = "https://jishuin.proginn.com"; kaifainUrl = "https://kaifain.proginn.com"; rooterUrl = "https://rooter.proginn.com"; jobUrl = "https://job.proginn.com"; break; case "test": case "test-jishuin": case "test-rooter": case "test-kaifain": case "test-job": api = "https://" + branch + ".test.proginn.com"; siteUrl = "https://" + branch + ".test.proginn.com"; jishuinUrl = "https://" + branch + ".test-jishuin.proginn.com"; kaifainUrl = "https://" + branch + ".test-kaifain.proginn.com"; rooterUrl = "https://" + branch + ".test-rooter.proginn.com"; jobUrl = "https://" + branch + ".test-job.proginn.com"; break; case "local": case "local-job": case "local-kaifain": case "local-jishuin": case "local-rooter": if (port && port != "80") { api = "http://local.proginn.com"; siteUrl = "http://local.proginn.com:" + port; jishuinUrl = "http://jishuin.local.proginn.com"; kaifainUrl = "http://kaifain.local.proginn.com"; rooterUrl = "http://rooter.local.proginn.com"; jobUrl = "http://job.local.proginn.com"; } else { api = "http://local.proginn.com"; siteUrl = "http://local.proginn.com"; jishuinUrl = "http://jishuin.local.proginn.com"; kaifainUrl = "http://kaifain.local.proginn.com"; rooterUrl = "http://rooter.local.proginn.com"; jobUrl = "http://job.local.proginn.com"; } break; case "prod": case "prod-jishuin": case "prod-rooter": case "prod-kaifain": case "prod-job": api = "https://" + branch + ".prod.proginn.com"; siteUrl = "https://" + branch + ".prod.proginn.com"; jishuinUrl = "https://" + branch + ".prod-jishuin.proginn.com"; kaifainUrl = "https://" + branch + ".prod-kaifain.proginn.com"; rooterUrl = "https://" + branch + ".prod-rooter.proginn.com"; jobUrl = "https://" + branch + ".prod-job.proginn.com"; break; default: // 按生产处理 api = "https://www.proginn.com"; siteUrl = "https://www.proginn.com"; jishuinUrl = "https://jishuin.proginn.com"; kaifainUrl = "https://kaifain.proginn.com"; rooterUrl = "https://rooter.proginn.com"; jobUrl = "https://job.proginn.com"; break; } } else { // 按生产处理 api = "https://www.proginn.com"; siteUrl = "https://www.proginn.com"; jishuinUrl = "https://jishuin.proginn.com"; kaifainUrl = "https://kaifain.proginn.com"; rooterUrl = "https://rooter.proginn.com"; jobUrl = "https://job.proginn.com"; } context.store.commit("updateDomainConfig", { api: api, siteUrl, jishuinUrl: jishuinUrl, kaifainUrl: kaifainUrl, rooterUrl: rooterUrl, jobUrl: jobUrl, urlType }); context.store.commit("updateDeviceType", context.app.$deviceType || {}); context.store.commit("updateIsPC", context.app.$deviceType.pc || false); context.store.commit("updateIsWeixin", context.app.$deviceType.wx || false); const host = process.server ? context.req.headers.host : location.host const matchedScope = host && /(kaifain|jishuin|job)/.exec(host) matchedScope && context.store.commit('scope:set', matchedScope[1]) }