使PHP-FPM安全.Limit_extensions不区分大小写



设置PHP-FPMsecurity.limit_extensions不区分大小写;

我已经设置了如下选项:

security.limit_extensions = .php .php3 .php4 .php5 .php7 .html .phtml .phps .js

为什么我在里面使用。js ?因为我有动态JS内容有时会改变一些东西。

但是它抛出了一个403 Forbidden消息,当我更改文件扩展名为. html,或. js,例如

。只适用于小写

最愚蠢的方法是简单地写出设置中所有可能的大小写变体。下面的bash命令

echo security.limit_extensions = .{P,p}{H,h}{P,p}{,3,4,5,7,S,s} .{P,p,}{H,h}{T,t}{M,m}{L,l} .{J,j}{S,s}

将生成它们,即:

security.limit_extensions = .PHP .PHP3 .PHP4 .PHP5 .PHP7 .PHPS .PHPs .PHp .PHp3 .PHp4 .PHp5 .PHp7 .PHpS .PHps .PhP .PhP3 .PhP4 .PhP5 .PhP7 .PhPS .PhPs .Php .Php3 .Php4 .Php5 .Php7 .PhpS .Phps .pHP .pHP3 .pHP4 .pHP5 .pHP7 .pHPS .pHPs .pHp .pHp3 .pHp4 .pHp5 .pHp7 .pHpS .pHps .phP .phP3 .phP4 .phP5 .phP7 .phPS .phPs .php .php3 .php4 .php5 .php7 .phpS .phps .PHTML .PHTMl .PHTmL .PHTml .PHtML .PHtMl .PHtmL .PHtml .PhTML .PhTMl .PhTmL .PhTml .PhtML .PhtMl .PhtmL .Phtml .pHTML .pHTMl .pHTmL .pHTml .pHtML .pHtMl .pHtmL .pHtml .phTML .phTMl .phTmL .phTml .phtML .phtMl .phtmL .phtml .HTML .HTMl .HTmL .HTml .HtML .HtMl .HtmL .Html .hTML .hTMl .hTmL .hTml .htML .htMl .htmL .html .JS .Js .jS .js
但是,我建议将扩展名改为小写。您可以使用rename之类的实用程序来完成此操作:
shopt -s globstar
rename 's!(.w+)+$!lc $&!e' **/*.*

最新更新