/server123/get_file.php?file=frame-38-227113.jpg
과 같은 전화를 (내부적으로) /server123/cache/2/2/7/227113/frame-38-227113.jpg
으로 리디렉션하려고합니다.존재하는 경우에만 HTTP 요청을 파일로 리디렉션
물론 해당 파일이 실제로 존재하는 경우에만. 그렇지 않으면 파일을 가져 오기 위해 get_file
스크립트를 통과해야합니다.
하지만 올바른 다시 쓰기 규칙을 만들지 못했습니다.
나는 지금까지 무엇을 가지고 :
RewriteEngine On
RewriteCond %{REQUEST_URI} =/get_file.php
RewriteRule ^.*$ /server063/get_file.php [L]
RewriteCond %{QUERY_STRING} file=(frame-[0-9]+-([0-9])([0-9])([0-9])[0-9]+.jpg)
RewriteCond %{REQUEST_URI} ^/(server[0-9]+)/get_file.php
RewriteCond %6/cache/%2/%3/%4/%1 -f
RewriteRule ^.*$ /$6/$5/cache/%2/%3/%4/%1 [L]
하지만 그건 작동하지 않습니다.
누군가가 내게 어떤 통찰력을 줄 수 있기를 바랍니까?
또한 여기서 무한 반복을 막으려 고 시도 할 때 IS_SUBREQ
을 사용해 보았습니다.하지만 그다지 많은 것을하지는 않습니다 (항상 루프를 다시 시도합니다).