我想在try_files的第一个文件被find时设置一个自定义的“X-Cache-Status”头文件 ,但是当其他文件匹配的时候没有。 什么是最好的方法来做到这一点?
server { location / { try_files /cache/${host}${cache_uri}_index.html $uri $uri/ /index.php?q=$uri&$args; } }
替代答案,如果没有:
server { location / { add_header X-Cache-Status "foo"; try_files /cache/${host}${cache_uri}_index.html @fallback; } location @fallback { try_files $uri $uri/ /index.php?q=$uri&$args; } }
我想你没有别的select,只是部分复制try_filesfunction:
server { location / { if ( -f "$document_root/cache/${host}${cache_uri}_index.html" ) { add_header X-Cache-Status "value"; break; } try_files $uri $uri/ /index.php?q=$uri&$args; } }