redirect to index.php in .htaccess except for one page maintenance.php

0

I have .htaccess below and it seems to be working fine:

<ifModule mod_rewrite.c>
  # LIGA O MOTOR DE REESCRITA (Rewrite)
  RewriteEngine on
  # BUSCA PELA BASE /teste/ NO HOST ACESSADO
  RewriteBase /teste/
  # FAZ UMA ESCESSÃO DE REDIRECIONAMENTO PARA A PÁGINA manutencao.php CASO O NAVEGADOR RECEBA ELA NA URL
  RewriteCond %{REQUEST_URI} !/manutencao.php$ [NC]
  # FAZ UMA ESCESSÃO E LIBERA IMAGENS NESTA PAGINA
  RewriteCond %{REQUEST_URI} !.(jpe?g?|png|gif) [NC]
  # REENVIA QUALQUER ACESSO AO SITE PARA A PÁGINA index.php NO HOST INDICADO LIBERANDO AS EXCESSÕES ACIMA DESCRITAS
  RewriteRule .* index.php
  #RewriteRule .* http://localhost/teste/index.php
  #RewriteRule .* http://localhost/teste/index.php [R=302,L]
</ifModule>

However, I have some doubts:

A) None of the lines below works, both give 500 error:

#RewriteRule .* http://localhost/teste/index.php 
#RewriteRule .* http://localhost/teste/index.php [R=302,L]

That is, I can not send to the address of host complete only redirects correctly to the specific page: index.php     In this case, if I access for example:

      http://localhost/teste/outroteste/testando/index.php 

redirection will be made to

     http://localhost/teste/outroteste/testando/index.php

that is, for the same link and not for

    http://localhost/teste/index.php

As expected.

How do I fix this?

B) The correction of the previous item should solve the problem of this item which is the css, js files, images and everything else that compose the file to be opened.

Who can help me?

Files involved:

.htaccess

<ifModule mod_rewrite.c>
  # LIGA O MOTOR DE REESCRITA (Rewrite)
  RewriteEngine on
  # BUSCA PELA BASE /teste/ NO HOST ACESSADO
  RewriteBase /teste/
  # FAZ UMA ESCESSÃO DE REDIRECIONAMENTO PARA A PÁGINA manutencao.php CASO O NAVEGADOR RECEBA ELA NA URL
  RewriteCond %{REQUEST_URI} !/manutencao.php$ [NC]
  # FAZ UMA ESCESSÃO E LIBERA IMAGENS NESTA PAGINA
  RewriteCond %{REQUEST_URI} !.(jpe?g?|png|gif) [NC]
  # REENVIA QUALQUER ACESSO AO SITE PARA A PÁGINA index.php NO HOST INDICADO LIBERANDO AS EXCESSÕES ACIMA DESCRITAS
  RewriteRule .* index.php
  #RewriteRule .* http://localhost/teste/index.php
  #RewriteRule .* http://localhost/teste/index.php [R=302,L]
</ifModule>

index.php

INDEX
<?php

  header ("Location: http://localhost/teste/manutencao.php"); 

?>

manutencao.php

<?php

  echo "MANUTENÇÃO  "; 

?>
<ifModule mod_rewrite.c>
  # LIGA O MOTOR DE REESCRITA (Rewrite)
  RewriteEngine on
  # BUSCA PELA BASE /crud/ NO HOST ACESSADO
  RewriteBase /crud/
  # FAZ UMA ESCESSÃO DE REDIRECIONAMENTO PARA A PÁGINA manutencao.php CASO O NAVEGADOR RECEBA ELA NA URL
  # PERCEBA O ! ANTES DO NOME DO ARQUIVO. ISSO DIZ AO .htaccess QUE O ARQUIVO EM QUESTÃO NÃO SEGUE A REGRA E ABRE NORMALMENTE
  RewriteCond %{REQUEST_URI} !/manutencao.php$ [NC]
  # FAZ UMA ESCESSÃO E LIBERA IMAGENS NESTA PAGINA
  # NOTE QUE PAR ESAS EXTENSÕES, O REDIRECIONAMENTO NÃO ACONTECE E DÁ ERRO 404 CASO A IMAGEM NÃO EXISTA
  # AS DEMAIS EXTENSÕES SÃO TODAS REENVIADAS PARA A INDEX
  RewriteCond %{REQUEST_URI} !.(jpe?g?|png|gif|css|js) [NC]
  # REENVIA QUALQUER ACESSO AO SITE PARA A PÁGINA index.php NO HOST INDICADO LIBERANDO AS EXCESSÕES ACIMA DESCRITAS
  RewriteRule .* index.php
</ifModule>

Even though you still have a problem:

You need to know how to change this line

  RewriteCond %{REQUEST_URI} !/manutencao.php$ [NC]

By such an adaptation

  RewriteCond %{REQUEST_URI} !/http://www.site.com.br/manutencao.php$ [NC]

So that the page that will be opened is obligatory on rais!

    
asked by anonymous 23.06.2018 / 14:55

0 answers