Magento

Removendo “index.php” do endereço das páginas no Magento

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.

Post Recentes

Bloquear .env e .git no nginx: as regras que ainda deixam o arquivo vazar

Negar /.env no nginx parece resolvido até alguém pedir /wp-content/uploads/.env ou backup.sql. As regras que testei e os furos que…

14 horas atrás

Canonical errado no Yoast: corrigindo pelo filtro wpseo_canonical

O Search Console marca suas páginas 2, 3 e 4 como alternativas da página 1? Ajuste a tag canônica do…

17 horas atrás

Layout XML do Magento 2: remover bloco de módulo de terceiro

Um módulo de terceiro plantou um banner no topo da loja e você não quer desinstalar nada: tire o bloco…

1 dia atrás

Restaurar dump do Magento 2 em outro servidor: trocar a base_url no SQL

Importou o banco de produção e o site pula para o domínio antigo? Rode o UPDATE em core_config_data, limpe o…

2 dias atrás

Criar exceção customizada em PHP: quando estender Exception compensa

Seu catch trata pedido inexistente e banco fora do ar do mesmo jeito. Veja como criar exceção customizada em PHP…

3 dias atrás

DataProvider Magento 2: form do admin abre com campos vazios ao editar

O form do admin salva mas abre em branco na edição: veja o getData() indexado pelo id da entidade e…

4 dias atrás