2026/6/20 3:59:28
网站建设
项目流程
网站制作的重要流程图,开平市住房和城乡建设局网站,名牌网站设计的图片,网站店铺分布图怎么做介绍#xff1a;#x1f310;1. 反向代理访问流程是怎样的#xff1f;反向代理的核心在于“前端接收#xff0c;后端转发”。用户的视角#xff08;浏览器#xff09;#xff1a;访问旧网站#xff1a;http://旧域名.com - 浏览器自动走 80端口 - IIS 直接返回…介绍1. 反向代理访问流程是怎样的反向代理的核心在于“前端接收后端转发”。用户的视角浏览器访问旧网站http://旧域名.com- 浏览器自动走80端口- IIS 直接返回内容。访问新网站http://新域名.com- 浏览器自动走80端口- IIS 接收到请求。服务器的视角IIS/ARRIIS 听到 80 端口有请求看了一眼信封上的“收件人”即 HTTP Header 中的Host。如果是“旧域名”IIS 就让旧网站处理。如果是“新域名”IIS 就把这封信悄悄塞给 ARR 模块。ARR 模块拿着这封信跑到服务器内部的8080端口去找那个新网站“有人找你把回复给我。”新网站8080端口处理完后把网页交给 ARR。ARR 再把网页递给 IISIIS 最后把网页发回给用户。结论用户始终只和 80 端口打交道完全不知道 8080 端口的存在。⚖️ 2. 为什么不会冲突这就好比一个公司的前台IIS和快递柜8080端口**前台IIS**站在门口80端口负责接待所有访客。**快递柜8080端口**放在公司内部走廊里访客看不到它。当访客用户来找“快递”访问新网站时他只需要告诉前台。前台去快递柜取出来给他访客不需要亲自去走廊找柜子。所以旧网站直接由前台服务新网站由前台代理服务两者互不干扰都能通过“只输入域名”来访问。 3. 关于 HTTPS (443端口) 的补充如果你的新网站也需要 HTTPS即用户访问https://新域名.com配置逻辑是一样的在 IIS 的代理站点中绑定https协议和新域名并安装 SSL 证书。ARR 规则保持不变依然转发给http://127.0.0.1:8080。流程用户 - 443端口 (IIS解密SSL) - ARR转发给 8080端口 (HTTP内网通信) - 返回。这样用户看到的是安全的 HTTPS而服务器内部为了节省资源使用 HTTP 通信。⚠️ 4. 需要注意的一个细节虽然用户不需要加端口号但在 IIS 的**新网站运行在 8080 端口的那个**绑定设置中建议做如下调整以避免直接暴露IP地址设置为127.0.0.1或::1仅本地访问。端口保持8080。为什么要这样这样设置后外部用户即使猜到了http://你的服务器IP:8080也无法直接访问到你的网站内容会提示拒绝连接或 404他们必须通过域名走 80 端口反向代理才能访问。这增加了安全性也强制了“无端口访问”的规范。具体步骤 前提条件确认请先确保以下两项已在你的 Windows 服务器上完成安装URL Rewrite 模块用于重写规则Application Request Routing (ARR)用于反向代理 第一步启用 ARR 全局代理功能⚠️ 这一步非常关键很多配置失败就是因为漏了这步。打开IIS 管理器在左侧连接树中点击最顶层的服务器名称不是某个网站在中间功能视图中双击打开Application Request Routing Cache在右侧“操作”面板中点击Server Proxy Settings✅ 勾选Enable proxy可选建议将Timeout (seconds)改为60或更高避免大文件超时点击Apply应用✅ 此时 ARR 代理功能已全局启用。 第二步确定“接收请求”的站点即监听 80 端口的站点Default Web Site绑定了:80即所有 HTTP 请求默认进入此站当访问http://你的域名就会显示 Default Web Site因此我们需要在Default Web Site上添加反向代理规则而不是新建站点。第三步为 Default Web Site 添加反向代理规则方法直接编辑Web.config最可靠打开Default Web Site的物理路径通常是C:\inetpub\wwwroot在该目录下找到或创建文件web.config用记事本或 VS Code 打开它将以下完整配置粘贴进去如果已有system.webServer只复制rewrite.../rewrite部分到其中configuration system.webServer rewrite rules !-- 修正添加 ignoreCasetrue 并确保域名完全一致 -- rule nameProxy_mc-admin stopProcessingtrue match url(.*) / conditions !-- 重点添加 ignoreCasetrue 并确保域名无额外字符 举例^shxnju\.skdji\.com$-- add input{HTTP_HOST} pattern^shxnju\.skdji\.com$ ignoreCasetrue / /conditions action typeRewrite urlhttp://127.0.0.1:8001/{R:1} / /rule /rules /rewrite /system.webServer /configuration关键说明{HTTP_HOST}会获取用户浏览器地址栏输入的域名不含端口pattern^shxnju\.skdji\.com$中的\.是正则转义确保匹配字面意义的点号urlhttp://127.0.0.1:8001/{R:1}表示将请求转发给本机 8001 端口并保留原始路径如/a/b→ 转发到:8001/a/bstopProcessingtrue表示匹配成功后不再执行后续规则安全 第四步可选但推荐限制 mc-admin 站点仅本地访问为了安全防止有人直接通过http://shxnju.skdji.com:8001访问后台建议限制其绑定在 IIS 中找到绑定8001的 站点右键 →编辑绑定Edit Bindings选中http绑定端口 8001点击编辑将IP 地址从 “全部未分配” 改为127.0.0.1点击确定❗ 常见问题排查问题可能原因解决方案访问xjkj.meukeji.cn仍是 Default Web SiteWeb.config 未生效 / 规则写错检查 Web.config 是否在wwwroot检查域名拼写重启 Default Web Site返回 502.3 Bad GatewayARR 未启用 / 目标端口不通确认第三步已启用 proxy在服务器本机访问http://127.0.0.1:8001看是否通页面样式错乱 / JS 加载失败后端返回的链接含:8001需要配置出站规则Outbound Rules替换 HTML 中的 URL或让前端使用相对路径