功能说明
本工具用于生成跨域资源共享(CORS)的服务器配置代码。您可以通过勾选和填写,快速生成 Nginx、Apache、PHP 以及 Node/Express 四种常见环境的配置片段,直接复制到您的服务器或代码中使用。
使用方法
- 允许来源:选择“所有来源”则允许任意域名访问;选择“指定域名”后,在文本框中输入一个或多个域名(用逗号分隔)。注意:当指定多个域名时,生成的配置中仅使用第一个域名作为示例,实际部署时需根据服务器特性(如 Nginx 的 map 模块)进行扩展。
- 允许方法:勾选需要允许的 HTTP 方法(GET、POST、PUT、DELETE、PATCH、OPTIONS)。
- 允许请求头:勾选常见的请求头,或选择“自定义头”并输入自定义请求头名称。
- 允许凭证:如果您的接口需要携带 Cookie 或 HTTP 认证信息,请勾选此项。注意:当允许凭证时,
Access-Control-Allow-Origin不能设置为*,必须指定具体域名。 - 缓存时间:设置预检请求(OPTIONS)的缓存秒数,减少频繁预检。
点击“生成配置”后,下方会显示四种环境的配置代码,您可以直接复制使用。
计算原理
CORS 是浏览器的一种安全机制,用于控制跨域请求。服务器通过响应头告知浏览器允许哪些来源、方法、请求头等。本工具根据您的选择,生成对应的响应头配置:
| 配置项 | 对应响应头 |
|---|---|
| 允许来源 | Access-Control-Allow-Origin |
| 允许方法 | Access-Control-Allow-Methods |
| 允许请求头 | Access-Control-Allow-Headers |
| 允许凭证 | Access-Control-Allow-Credentials |
| 缓存时间 | Access-Control-Max-Age |
不同服务器(Nginx、Apache、PHP、Node/Express)设置响应头的语法不同,本工具已为您转换为对应格式。
注意事项
- 当允许凭证时,
Access-Control-Allow-Origin不能为*,必须指定具体域名,否则浏览器会拒绝请求。 - 如果指定了多个域名,生成的配置仅以第一个域名为示例,实际部署时请根据服务器文档进行多域名支持。
- 本工具生成的配置仅供参考,不构成专业建议。请在生产环境测试后使用。