Pergunta

Se eu usar mod_rewrite para controlar todos os meus 301 redirecionamentos, isso acontece antes de minha página é servido? por isso, se eu também tenho um monte de regras de redirecionamento em um script php que é executado em minha página, será o pontapé .htaccess no primeiro?

Foi útil?

Solução

Quando uma solicitação é feita para o URI afetados pelo arquivo .htaccess, então Apache irá lidar com quaisquer regras de reescrita antes de qualquer um dos seus executa o código PHP.

Outras dicas

O .htaccess vai chutar em primeiro lugar. Se você olhar para o ciclo pedido Apache:

Apache Pedido Cycle

PHP é um manipulador de resposta. runs mod_rewrite em tradução URI, exceto para reescrever as regras em .htaccess e ou blocos que funcionam na fase de correção. Isso ocorre porque Apache não sabe qual diretório é no (e, portanto, que ou .htaccess para ler), até que após a tradução URI.

Em resposta a à pergunta de gabriel1836 sobre a imagem, eu agarrei-o do segundo slide de esta apresentação mas é originalmente do livro: Escrita Apache módulos em Perl e C que eu recomendo.

Sim, o arquivo .htaccess é analisado antes de seu script é servido.

.htaccess acontece pela primeira vez.

htaccess é controlado pelo servidor web. Este arquivo será levado em conta antes de seu arquivo PHP.

Por exemplo, você pode restringir o acesso a uma pasta específica com o seu arquivo .htaccess. Então, ele tem que ser tomada a cargo antes de seu PHP.

Espero que isso ajude.

O .htaccess é realizada pelo Apache antes da execução do script php. (Imagine se o script php é executado e, em seguida, o .htaccess fazer um redirecionamento para outra página ...).

Você sempre pode testar isso com o seguinte comando:

wget -S --spider http://yourdomain.com

Com este comando você vê o que está a responder ao seu pedido.

Como todos os outros mencionados, .htaccess é em primeiro lugar.

Então, basicamente, o .htaccess mais ou menos requer o código ou arquivos PHP relevante, de acordo com as regras especificadas no .htaccess, significando .htaccess é executado em primeiro lugar.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top