Uma pequena confusão sobre os arquivos do DBM e como eles funcionam

4

Eu tenho o Apache 2.4 e estou usando arquivos DBM RewriteMap.

ou seja:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteMap examplemap "dbm:/etc/httpd/conf/rewrite.dbm"
    RewriteCond ${examplemap:$1} !=""
    RewriteRule ^(.*) /${examplemap:$1} [R=301,L]
</IfModule>

<VirtualHost *:80>
    DocumentRoot /var/www/sites/me
    Options +FollowSymLinks +Indexes
    RewriteEngine On
    RewriteOptions Inherit
    RewriteMap redirects "dbm:/etc/httpd/conf/redirects.dbm"
    RewriteCond ${redirects:$1} !=""
    RewriteRule ^(/.*) /${redirects:$1} [R=301,L]
</VirtualHost>

Eu preciso ser capaz de provar que o segundo arquivo dbm (redirects.dbm) não está sendo carregado na memória quando uma solicitação é feita e a condição é encontrada no primeiro arquivo dbm (rewrite.dbm)

Para meu conhecimento sobre as várias leituras que fiz, ambos os arquivos foram carregados na memória. IS isso correto?

A razão para isto é que o rewrite.dbm conterá apenas 300 reescritas, mas irá mudar frequentemente (diariamente). O redirecions..dbm nunca será alterado depois de carregado e conterá cerca de 30.000 redirecionamentos.

O cliente quer ter certeza de que os arquivos do segundo DBM não serão carregados na memória e / ou retardarão o tempo de solicitação se o primeiro arquivo dbm for o necessário.

Acho que o fluxo seria mais ou menos assim:

link

IF / abc está em rewrite.dbm end e mostra a página

IF / abc não está em rewrite.dbm search redirects.dbm

IF / abc não está em nenhum lance 404

Espero que o que eu esteja perguntando seja claro.

    
por Anthony Fornito 02.10.2018 / 21:34

0 respostas