動態產生快取了,想透過URL來直接讀取這些快取檔案已達到效率更高的目的。但是快取字母統一都是小寫。如http://xxx/ooo/abc.jpg
當使用者讀取http://xxx/ooo/ABC.jpg的時候無法定位到快取(報錯
請問如何只在ooo/這個路徑下忽略檔案大小寫?
仅有的幸福2017-05-16 17:30:49
樓上都沒看清楚題目,就貼了個鏈接,可惜我聲望不夠,不然肯定踩你一下
我回答一下樓主的問題,兩個方案:
1. 採用nginx官方提供的Perl Moudle,注意這個模組並沒有自動加載,需要運行配置文件時增加--with-httpperlmodule。首先,location要匹配到ooo目錄,然後要匹配剩餘uri,如果有大寫,則調用perl將url全部轉成小寫,然後rewrite,參考配置代碼:
#测试perl的统一转小写功能
perl_set $url '
sub {
my $r = shift;
my $lurl = lc($r->uri);
return $lurl;
}
';
location ~* ^/ooo/ {
if ($uri ~ [A-Z]) {
rewrite ^(.*)$ $url premanent;
}
root ooo所在的根目录;
}