As três linhas abaixo informam ao Apache para verificar o sistema de arquivos para ver se o arquivo existe.
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_FILENAME} !-f [OR]
O primeiro significa "se o URI não é um diretório". O segundo significa "se o URI não é um link". O terceiro significa "se o URI não é um arquivo".
Se você remover ou comentar essas linhas, o Apache aplicará a reescrita abaixo a todos os arquivos que não terminarem em ".html" ou ".nl" e não verificarão o sistema de arquivos para ver se o arquivo existe primeiro .
Existe um propósito para as três linhas acima. Eles estão lá para que, se você adicionar um arquivo, diretório ou link simbólico ao seu documento root e alguém solicitar esse arquivo, diretório ou link simbólico, o Apache irá processá-lo como normal e não reescrever. Se você souber que nunca adicionará arquivos reais à raiz do documento, poderá comentá-los com segurança sem efeitos colaterais.
Uma mudança potencialmente melhor seria adicionar uma nova regra acima das três linhas como esta:
RewriteRule (.*[^/]{255}.*) index.cgi?$1 [L,QSA]
Isto irá interceptar quaisquer URIs que possuam uma única cadeia de caracteres com mais de 255 caracteres entre barras e enviá-las diretamente para a reescrita sem verificar o sistema de arquivos. A opção [L] garante que o Apache não verifique mais regras se corresponder a esta. Não há perigo de interceptar URIs que seriam mapeados para arquivos reais porque os URIs que correspondem a essa regex não serão caminhos de arquivos válidos.
Atualização:
Um regex que corresponde a qualquer URI com pelo menos 255 caracteres.
RewriteRule (.{255}) index.cgi?$1 [L,QSA]