O ‘index.php’ só poderá ser removido com sucesso da URL “endereço” das páginas de sua loja Magento somente caso o módulo mod_rewrite estiver habilitado em seu servidor.
Para verificar isso, você pode entrar em contato com o administrador do servidor / provedor de hospedagem.
Mod_rewrite
O mod_rewrite fornece uma maneira de modificar solicitações de URL recebidas, dinamicamente, com base em regras de expressões regulares. Isso permite que você mapeie URLs arbitrárias em sua estrutura de URL interna da maneira que desejar.
Ele suporta um número ilimitado de regras e um número ilimitado de condições de regras anexadas para cada regra, fornecendo um mecanismo de manipulação de URLs muito flexível e poderoso.
As manipulações de URL podem depender de vários testes: variáveis de servidor, variáveis de ambiente, cabeçalhos HTTP, registros de data e hora, pesquisas de banco de dados externas e vários outros programas ou manipuladores externos podem ser usados para obter correspondência de URL granular.
Muita atenção ao seguir este tutorial caso a sua loja já esteja em produção (vendendo).
Removendo “index.php”
1. Clique na guia Sistema-> Configuração:
2. Na tela exibida, clique na guia “Web” em “Geral” no lado esquerdo do painel de administração.
3. Agora, defina a opção “Usar os Rewreates do servidor da Web” em “Otimização dos mecanismos de pesquisa” para “Sim”.
4. Em seguida, defina a opção “Usar URLs Seguros no Frontend” em “Seguro” para “Sim”. Clique no botão “Salvar configuração” no canto superior direito.
Alterando Htaccess
(atenção: faça um backup do arquivo original)
5. Agora precisamos criar um arquivo .htaccess com as diretrizes de reescrita na raiz da sua instalação do Magento. Você pode usar o Gerenciador de Arquivos do painel de controle de hospedagem ou o FTP para criar um arquivo.
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule>
Caso a sua instalação Magento esteja localiza em uma pasta, utilize: (altere “shop”)
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase /shop/ RewriteRule ^index.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /shop/index.php [L] </IfModule>
6. Salve o arquivo e verifique seu site.
O “index.php” foi removido com sucesso do URL.