OpenResty 配置跨域
时间: 2024-05-28 22:07:31 浏览: 169
服务支持跨域请求的配置
OpenResty 是一个基于 Nginx 与 Lua 的高性能 Web 平台,可以用它来搭建各种类型的 Web 应用、网关、API 服务等等。关于 OpenResty 配置跨域问题,可以通过在 Nginx 的配置文件中增加相应的代码来实现。以下是一个简单的跨域配置示例:
```
server {
listen 80;
server_name example.com;
location /api/ {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
if ($request_method = 'OPTIONS') {
return 204;
}
}
}
```
上述配置中,我们使用了 `add_header` 指令来添加跨域相关的响应头信息,其中:
- `Access-Control-Allow-Origin`:允许的来源地址,这里使用了 `*` 表示接受任意来源的请求。
- `Access-Control-Allow-Methods`:允许的请求方法,这里使用了 `GET`、`POST` 和 `OPTIONS`。
- `Access-Control-Allow-Headers`:允许的请求头信息。
- `$request_method = 'OPTIONS'`:判断当前请求是否为跨域预检请求,如果是则直接返回 204 状态码。
除此之外,还需要注意在 Nginx 的配置文件中正确设置 `server_name` 和 `location` 等参数,以确保跨域配置生效。希望以上内容对你有所帮助。
阅读全文