如何将XAMPP运行的HTTP网页嵌入SharePoint Online?
针对你想把XAMPP环境下的HTTP网站嵌入SharePoint Online的需求,我来梳理几个可行的方案——先提前说明:SharePoint Online和现代主流浏览器(Chrome、Edge等)都默认拦截HTTP内容,因为这是明文传输的不安全协议,原生的「嵌入」Web部件直接加载肯定会失败,得绕开这个限制:
方案1:用SharePoint Framework (SPFx) 自定义Web Part(最可控的方案)
你可以开发一个简单的SPFx Web Part,通过后端代理的方式加载HTTP内容,原理是:
- 先搭一个HTTPS的中间代理服务(比如用Azure Functions、Node.js轻量服务,Azure有免费额度足够小流量场景),这个服务负责请求你的XAMPP HTTP网页,再把内容返回给SPFx Web Part。
- 开发SPFx Web Part时,调用这个HTTPS代理的接口,拿到内容后在Web Part里渲染出来。
- 这样SharePoint Online只会和HTTPS的代理通信,完美避开混合内容拦截,而且不用修改原XAMPP网站的协议。
注意:这个方案需要你有基础的前端开发能力(TypeScript/JavaScript),不过SPFx的官方文档有很多入门教程,上手不算难。
方案2:尝试第三方认证的Web部件(低代码选项)
Microsoft 365应用商店里有一些第三方Web部件,支持通过代理加载非HTTPS内容,不过要注意:
- 这类工具通常需要你配置他们的代理服务,或者授权他们访问你的HTTP网站。
- 一定要选Microsoft认证的应用,避免安全风险,而且要先测试是否真能绕过拦截(很多工具本质也是用代理,但部分可能还是受浏览器限制)。
方案3:临时本地测试方案(仅个人测试用)
如果你只是自己测试,不想折腾开发或第三方工具,可以临时关闭浏览器的混合内容拦截:
- 在Chrome/Edge地址栏输入
chrome://flags/#allow-insecure-localhost(Edge是edge://flags/#allow-insecure-localhost),启用「允许不安全的localhost」选项,重启浏览器后就能临时加载本地HTTP内容到SPO里。 - 划重点:这个方法只适合自己测,不能给其他用户用,浏览器更新后可能会重置设置,生产环境绝对禁用。
额外建议
从长远来看,给你的XAMPP网站配置HTTPS是最稳妥的方案——本地环境可以用自签名证书,公网访问的话申请免费的Let's Encrypt证书,这样就能直接用SPO原生的「嵌入」Web部件加载,没有任何兼容性和安全隐患。
内容的提问来源于stack exchange,提问作者David Egan
相关产品推荐
相关产品推荐

