Nginx
Nginx 使用變數過期指令
我正在嘗試設置動態過期標頭。這基本上是我的配置:
# http context map $request_uri $expires_time { default -1; *.js max; } server { # server_name/proxy_headers/listen/ssl location / { expires $expires_time; proxy_pass http_serverving_docker_container.docker; } }
我在以下位置收到此錯誤消息
nginx -t
:nginx: [emerg] "expires" directive invalid value in /etc/nginx/sites-enabled/config:57 # <- this is the expires line nginx: configuration file /etc/nginx/nginx.conf test failed
如果我用一個數字(例如:-1)交換它,那麼一切都很好。我不允許在這裡使用變數嗎?我仔細閱讀了過期的手冊頁,但沒有看到任何提及。
附加資訊:Nginx 版本:nginx/1.6.2 Linux 版本:Debian GNU/Linux 8 (jessie)
您在過時的 Linux 發行版上使用過時的 nginx 版本。兩者都需要盡快升級。
尤其:
- Debian 8 已經結束了 LTS 支持。它不會收到進一步的更新,甚至不會收到安全更新。將此系統連接到 Internet 存在極大的風險。
- 正如文件所述,在 nginx
expires
指令中使用變數至少需要 1.7.9 版本。