当前位置:论坛首页 > 新功能建议 > Linux面板

【待反馈】[建议] 增加跨域选项

发表在 新功能建议2023-10-26 14:41 [复制链接] 3 1815

本帖最后由 堡塔运维小林 于 2023-10-26 15:51 编辑

每次配置跨域都要修改配置文件,很麻烦 一不小心还出错, 建议提供一键配置功能
使用道具 举报 只看该作者 回复
发表于 2023-10-26 15:51:11 | 显示全部楼层
本帖最后由 堡塔运维小林 于 2023-10-26 16:24 编辑

您好,跨域配置有些参数是会变动的,不同的用户使用的配置可能不一样,也会产生报错,目前您是一个怎么样的使用场景,想要解决的问题又是怎么样的,另外如果这个需求通过了,您希望这个跨域配置又是怎么样的呢,项目的类型是前后端分离的吗?具体描述一下,开发这边也好判断可行性
使用道具 举报 回复 支持 反对
发表于 2023-10-26 16:23:20 | 显示全部楼层
您好,浏览器跨域是指浏览器在安全策略下限制了不同源(协议、域名、端口)之间的交互,是浏览器做的安全措施,为了防止恶意网站利用客户端的漏洞来攻击其他网站如果你在代码中无法实现,或者不会,我这里有一段参考代码,可以根据nginx的跨域配置参考代码修改成你自己的
location / {  
    # 允许跨域的请求,可以自定义变量$http_origin,*表示所有  
    add_header 'Access-Control-Allow-Origin' *;  
    # 允许携带cookie请求  
    add_header 'Access-Control-Allow-Credentials' 'true';  
    # 允许跨域请求的方法:GET,POST,OPTIONS,PUT  
    add_header 'Access-Control-Allow-Methods' 'GET,POST,OPTIONS,PUT';  
    # 允许请求时携带的头部信息,*表示所有  
    add_header 'Access-Control-Allow-Headers' *;  
    # 允许发送按段获取资源的请求  
    add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range';  
    # 一定要有!!!否则Post请求无法进行跨域!  
    # 在发送Post跨域请求前,会以Options方式发送预检请求,服务器接受时才会正式请求  
    if ($request_method = 'OPTIONS') {  
        add_header 'Access-Control-Max-Age' 1728000;  
        add_header 'Content-Type' 'text/plain; charset=utf-8';  
        add_header 'Content-Length' 0;  
        # 对于Options方式的请求返回204,表示接受跨域请求  
        return 204;  
    }  
}  
这一段配置不一定能解决

使用道具 举报 回复 支持 反对
发表于 2023-11-6 15:07:28 | 显示全部楼层
堡塔运维小林 发表于 2023-10-26 15:51
您好,跨域配置有些参数是会变动的,不同的用户使用的配置可能不一样,也会产生报错,目前您是一个怎么样的 ...

这个跨域的设置, 完全可以参考 百度云CDN的 设置选项, 百度云CDN的选项非常齐全,抄就可以了
使用道具 举报 回复 支持 反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

普通问题处理

论坛响应时间:72小时

问题处理方式:排队(仅解答)

工作时间:白班:9:00 - 18:00

紧急运维服务

响应时间:3分钟

问题处理方式:宝塔专家1对1服务

工作时间:工作日:9:00 - 18:30

宝塔专业团队为您解决服务器疑难问题

立即付费处理

工作时间:09:00至24:00

快速回复 返回顶部 返回列表