通过对Nginx服务器的第一个IP地址请求限制URI访问(secure_link模块)

时间:2018-06-01 07:51:42

标签: nginx

我的公司正在构建包含核心组件的小型视频CDN: - 请求路由器(控制哪个边缘服务器将为视频内容提供服务,为边缘服务器生成客户端请求的URI,使用令牌) - 原始视频服务器 - 边缘服务器(使用nginx) 我的示例URI: HTTP://($ REMOTE_ADDRESS)/视频/($令牌)/($到期)/abc/xyz/bla/bla/bla/bla/bla/index.mpd 令牌是密钥的md5,到期...(不是远程地址) 因为从客户端到请求路由器的某些情况 remote_address与从客户端到边缘服务器的remote_address不同所以我不能通过此ip使用nginx secure_link模块来限制访问。 你们知道如何限制一个Uri到第一个ip地址请求吗?

1 个答案:

答案 0 :(得分:0)

我不认为这对Nginx直接是可行的。

您基本上希望将匹配该模式的网址与可以访问该模式的第一个IP配对。

为了做到这一点,您需要一种middleware,它会在每次向您的服务器发出请求时执行。

您可以创建一个简单应用程序的脚本,该应用程序存储令牌和IP对,并检查存储是否已包含令牌的对。

完成后,您可以通过HttpLuaModule对每个请求运行脚本。请查看this answer以获取示例。