您现在的位置是: 首页 > 后端开发 获取阿里云CDN真实IP
获取阿里云CDN真实IP
2020-05-24 【后端开发】 3829人已围观 8461次浏览
简介获取阿里云CDN真实IP
在项目部署的时候,使用了阿里云CDN的情况下,后端是无法获取到用户真实的IP地址的,获取到的都是阿里云CDN节点的IP地址
通过项目获取所有的 Header 发现,阿里云CDN在回源的时候,是带上了客户端真实IP地址的
Ali-CDN-Real-IP 就是CDN回源时记录的客户端真实IP地址的 Header 参数
所以可以修改 Nginx 配置,在配置中新增这一行
location / {
...
proxy_set_header Ali-CDN-Real-IP $remote_addr;
...
}
然后后端程序中,就可以不改动原有的代码,直接以原有的方式通过获取 Remote_Addr 来获取真实IP
还有一种方式就是直接在后端程序中获取 Header 参数为 Ali-CDN-Real-IP 的值,同样也可以获取到真实的IP地址。
如果是 PHP 中,通过 $_SERVER 来获取的话,则需要修改参数为
$_SERVER['HTTP_ALI_CDN_REAL_IP']
如果以上的方式还是无法解决获取真实IP的问题,可能就需要参考下面的阿里云官方文档的介绍尝试一下
https://help.aliyun.com/document_detail/119658.html
很赞哦! (0)
上一篇:Docker 批量操作命令
相关文章
- SpringBoot 启动测试时出现提示 Test class should have exactly one public zero-argument constructor
- Laravel项目出现could not be opened: failed to open stream: Permission denied
- SqlServer字符串处理
- SqlServer 优化技巧
- Laravel Dingo/api 出现 The version given was unknown or has no registered routes.报错
- PHP 在执行 composer install 时出现提示 PHP Fatal error: Allowed memory size of XXXXXX bytes exhausted <...>
- PHP 中list()出现Undefined offset: 0错误
- 记一次 Mybatis-Plus 自动填充无效问题解决
- springboot引入mybatis-plus后出现ClassNotFoundException: org.mybatis.logging.LoggerFactory
- SqlServer 查询包含指定字段的存储过程
点击排行
- Error in execution; nested exception is io.lettuce.core.RedisCommandExecutionException: ERR DISABLE You can't write or read against a disable instance
- Debian apt 使用国内镜像
- RocketMQ 出现 sendDefaultImpl call timeout 问题
- 类 BASE64Decoder 程序包 sun.misc 找不到符号
- SpringBoot @NotBlank 不生效问题
- 记一次 Mybatis-Plus 自动填充无效问题解决
- SpringBoot 2.x 文件上传出现 The field file exceeds its maximum permitted size of 1048576 bytes
- nuxt 项目完整部署方案
站长推荐
猜你喜欢
- Linux 安装 Tengine
- Python 钉钉加签 HmacSHA256 算法签名
- 【代码片段】MySQL新建表添加基础字段
- springboot引入mybatis-plus后出现ClassNotFoundException: org.mybatis.logging.LoggerFactory
- CentOS 安装Python3
- 解决Lost connection to MySQL server at 'reading initial communication packet' 的方法
- SpringBoot @NotBlank 不生效问题
- start.spring.io访问太慢,构建SpringBoot项目失败
- CentOS 7 安装 Golang 环境
- CentOS 安装JDK