📌  相关文章
📜  htaccess set access-control-allow-origin (1)

📅  最后修改于: 2023-12-03 15:15:32.912000             🧑  作者: Mango

设置 Access-Control-Allow-Origin

当浏览器从一个域名向另一个域名请求资源时,会发起跨域请求。浏览器会向服务器发送一个OPTIONS请求,获取服务器是否允许跨域访问,如果服务器返回了正确的响应头,那么浏览器才会继续请求。其中一个必须要设置的响应头就是Access-Control-Allow-Origin

什么是 Access-Control-Allow-Origin

Access-Control-Allow-Origin是一种 HTTP 响应头,它允许客户端(浏览器)请求来自不同域的服务器上的资源。当跨域请求发生时,服务器会检查请求头中的Origin字段,并与已设置的Access-Control-Allow-Origin进行比较,如果匹配,则浏览器才会继续处理响应结果。

如何设置 Access-Control-Allow-Origin

通过在.htaccess文件中设置Access-Control-Allow-Origin来解决跨域问题。

<ifModule mod_headers.c>
    Header set Access-Control-Allow-Origin "*"
</ifModule>

以上代码会设置Access-Control-Allow-Origin*,表示允许所有域名跨域请求该资源。如果需要限制域名,可以将*替换为指定域名。例如,如果只允许example.com跨域请求,可以这样写:

<ifModule mod_headers.c>
    Header set Access-Control-Allow-Origin "http://example.com"
</ifModule>
注意事项
  • Access-Control-Allow-Origin需要设置在响应头中,不能在请求头中设置。
  • 在响应头中设置Access-Control-Allow-Origin会存在安全风险,需要仔细考虑哪些域名可以跨域请求该资源。