背景
最近需要做一個訪問靜態資源忽略URL大小寫的需求,思路如下
【1】使用nginx做訪問靜態資源的反向代理
【2】通過重定向的方式,將含有大小寫的鏈接轉爲小寫(大寫也行,統一就好)
【3】將靜態資源通過批處理腳本,統一修改名稱爲小寫(同2標準)
如此三部便實現訪問URL了忽略大小寫的需求。
以下是部分要點配置參考
nginx配置
此處使用了nginx 的lua模塊,所以需要安裝,詳情centos給nginx安裝lua模塊
location ~* / {
if ($uri ~ [A-Z]){
rewrite_by_lua 'return ngx.redirect(string.lower(ngx.var.uri),ngx.HTTP_MOVED_PERMANENTLY)';
}
root 靜態資源目錄;
index index.html index.htm;
}