/ / Usando curingas em um redirecionamento htaccess? - .htaccess, reescrever mod

Usando curingas em um redirecionamento de htaccess? - .htaccess, mod-reescrever

Minha namorada deseja desativar o blog e redirecionar todo o tráfego de volta para o site.

Adicionei isso ao arquivo htaccess da raiz:

RedirectMatch 301 ^/blog/$ http://www.site.co.uk

Que redireciona http://www.site.co.uk/blog sem problemas, no entanto, qualquer post do blog (por exemplo, http://www.site.co.uk/blog/post-url) ainda carregam e não redirecionam.

Eu tentei o seguinte e, infelizmente, não consigo obter as subpáginas de / blog / para redirecionar:

# Attempt 1
RedirectMatch 301 ^/blog/(.*)$ http://www.site.co.uk

#Attempt 2
RedirectMatch 301 ^/blog/*$ http://www.site.co.uk

Aqui está o arquivo .htaccess em site.co.uk (Opencart) e aqui está o arquivo .htaccess em site.co.uk/blog/ (Wordpress)

Tentei limpar os dois arquivos htaccess para que a única linha restante seja RedirectMatch 301 ^/blog/$ http://www.site.co.uk e infelizmente ainda não redireciona nada acima do / blog / nível.

Alguma idéia do que estou fazendo de errado, por favor?

Obrigado :)

Respostas:

1 para resposta № 1

Existe um certo motivo para você querer usar o RedirectMatch? Um simples redirecionamento 301 deve fazer o trabalho:

RewriteEngine on
Redirect 301 /blog http://example.com

A propósito, antes de usar 301 (movidopermanentemente), use 302 (movido temporariamente). Dessa forma, você poderá testar e seu navegador e os navegadores de outros usuários não armazenarão em cache redirecionamentos implementados incorretamente. Para fazer isso, basta remover o 301. Quando tudo estiver funcionando, adicione-o novamente:

RewriteEngine on
Redirect /blog http://example.com

Se o redirecionamento não funcionar, tente limpar o cache do navegador. É possível que alguma regra antiga seja armazenada em cache.