我尝试使用Nginx(原始边缘)设置至少2台服务器.都是用mp4模块编译的.原点包含我所有的mp4文件. Edge配置了所有按预期工作的缓存内容(见下文),第二次每个mp4文件请求由没有原始流量的边缘缓存提供.
但我希望能够在文件中寻找.功能来自mp4模块.只需追加查询参数“?start = 120”即告诉Nginx以时间戳120秒开始提供mp4内容.这适用于直接请求的原点.但是只要我在Nginx的缓存位置启用mp4-module,请求就会是404.
Nginx.conf @ origin:
server {
listen 80;
server_name localhost;
root /usr/share/Nginx/www;
location ~ \.mp4${
mp4;
expires max;
}
}
Nginx.conf @ edge:
proxy_cache_path /usr/share/Nginx/cache levels=2:2 keys_zone=icdn_cache:10m inactive=7d max_size=2g;
proxy_temp_path /usr/share/Nginx/temp;
proxy_ignore_headers X-Accel-Expires Cache-Control Set-Cookie;
log_format cache '[$time_local] Cache: $upstream_cache_status $upstream_addr $upstream_response_time $status $bytes_sent $proxy_add_x_forwarded_for $request_uri';
access_log /usr/local/Nginx/logs/cache.log cache;
upstream origin {
server
我也尝试过:
location / {
location ~ \.mp4${ mp4; }
proxy_cache icdn_cache;
proxy_pass http://origin;
proxy_cache_key $uri;
}
最佳答案
您必须使用proxy_store. proxy_cache将为每个?start = xxxx请求创建大量文件.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。