Hello Igor,
Friday, October 9, 2009, 8:59:25 PM, you wrote:
> On Fri, Oct 09, 2009 at 05:47:51PM +0400, Vasiliy G Tolstov wrote:
>> > Вместо
>> >
>> > location ~ "^/(CHANGELOG|COPYRIGHT|INSTALL\.mysql|INSTALL\.pgsql|INSTALL|LICENSE|MAINTAINERS|UPGRADE)\.txt" {
>> > deny all;
>> > }
>> >
>> > лучше сделать
>> > location = /CHANGELOG { deny all; }
>> > location = /INSTALL.mysql { deny all; }
>> > location = /INSTALL.pgsql { deny all; }
>> > location = /INSTALL { deny all; }
>> > и т.д.
>> >
>> >
>>
>> А если таких location =200 ? тоже стоит сделать location для каждого или
>> регуляркой?
> В этом случае регулярное выражение может быть быстрее.
99% запросов в этот location не попадут, но каждый из них
будет проверятся на соответствие этому регулярному выражению, а в
итоге уйдет в location / { }.
Так что думаю сбалансированное дерево из 200 элементов в этом случае
предпочтительней. Тем более, что в худшем случае будет log_e(200) = 5
memcpy() вызовов, и неизвестно во что скомпилится регулярка с 200
словами.
Ы?
--
Best regards,
Denis mailto:denis@gostats.ru