Redirecionamento de um domínio para outro

21/06/2020

9

Salve a todos,

Sou novo em PHP, preciso de uma ajuda para solucionar um problema. Recentemente migrei um sistema de um domínio (periodico.ebras.bio.br/ojs) para outro (entomobrasilis.org), ambos tem https e preciso redirecionar as chamadas do acesso do primeiro para o segundo. O padrão da URL é a quase mesma mas muda apenas o domínio.

Desta forma preciso implantar no primeiro domínio um arquivo index.php que receba o o link e redirecione para o outro domínio, como segue abaixo

Chamada de acesso: https://www.periodico.ebras.bio.br/ojs/index.php/ebras/article/view/ebrasilis.v13.e0889
Endereço de Redirecionamento: https://www.entomobrasilis.org/index.php/ebras/article/view/ebrasilis.v13.e0889

Em tempo, ambos site são de minha gestão, apenas o primeiro ficou obsoleto e o server não estava atendendo, além da necessidade de um domínio independente.

Como disse sou iniciante em PHP e não seu por onde começar. Tenho estudado, mas preciso de uma solução pontual e a curto prazo.

Forte abraço a todo e espero ajuda,
William Rodrigues

William Rodrigues

Responder

Post mais votado

22/06/2020

Pode-se utilizar somente Javascript:

  <script>
    function redirect() {
      location.href = "http://google.com";
    }
    addEventListener('load', redirect);
  </script>


Se quiser algo mais completo pode-se usar um timer e exibir uma mensagem de que o domínio mudou e inclusive um link para clicar caso ocorra erro no redirecionamento automático falhar.

Fica a seu critério como será esta feature.

Jothaz

Jothaz
Responder

Mais Posts

22/06/2020

Jothaz

Segue um exemplo completo com contagem regressiva.


<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>Redirecionamento de domínio</title>

    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css"
        integrity="sha384-9aIt2nRpC12Uk9gS9baDl411NQApFmC26EwAOH8WgZl5MYYxFfc+NcPb1dKGj7Sk" crossorigin="anonymous">
</head>

<body>
    <div class="main">
        <div class="container">
            <h1 class="text-center">Mudança de domínio</h1>

            <div class="p-5 pb-5">
                <h3 class="text-center"> Este domínio agora deve ser acessado pelo link: </h3>
            </div>

            <div class="text-center">
                <h3><a href="https://ancient-cities.com/">www.novo.dominio</a></h3>
            </div>

            <div class="p-5 pb-5 ">
                <h5 class="text-center">Se o redirecionamento automatico falhar clique <a
                        href="https://ancient-cities.com/">aqui</a>
                </h5>
            </div>


            <h3 class="text-center">
                O rederecionamento será executado em:<span id="segundosRestantes" class="m-2">5</span> segundos
            </h3>

        </div>
    </div>
    <script type="text/javascript">
        // Total segundos que será esperadao para redirecionar
        var segundos = 5;

        function segundosRestantes() {
            segundos = segundos - 1;
            if (segundos < 0) {
                // redireciona
                window.location = "https://ancient-cities.com/";
            } else {
                // Atualiza segundos restantes
                document.getElementById("segundosRestantes").innerHTML = segundos;
                // Contagem regressiva javascript
                window.setTimeout("segundosRestantes()", 1000);
            }
        }

        //Executa contagemRegressiva 
        segundosRestantes();
    </script>

    <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"
        integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous">
    </script>
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js"
        integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous">
    </script>



</body>

</html>


Responder

23/06/2020

Jothaz

Galera, mas isso não resolve o problema, esse simples redirecionamento é tranquilo, a questão é
quando o usuário acessar esse endereço, por exemplo, https://www.periodico.ebras.bio.br/ojs/index.php/ebras/article/view/ebrasilis.v13.e0889 (ele está cadastrado em centenas de base dedados e não tem como atualizar a curto prazo). O meus script em JS ou PHP, ten que pegar o seguinte caminho (article/view/ebrasilis.v13.e0889) e redirecionar para https://www.entomobrasilis.org/index.php/ebras/article/view/ebrasilis.v13.e0889, percebam que a parte article/view/ebrasilis.v13.e0889, são idênticos nos dois domínios

Não é tão simples como vocês imaginaram, mas agradeço a tentativa.
Responder

23/06/2020

William Rodrigues

Galera, mas isso não resolve o problema, esse simples redirecionamento é tranquilo, a questão é
quando o usuário acessar esse endereço, por exemplo, https://www.periodico.ebras.bio.br/ojs/index.php/ebras/article/view/ebrasilis.v13.e0889 (ele está cadastrado em centenas de base dedados e não tem como atualizar a curto prazo). O meus script em JS ou PHP, ten que pegar o seguinte caminho (article/view/ebrasilis.v13.e0889) e redirecionar para https://www.entomobrasilis.org/index.php/ebras/article/view/ebrasilis.v13.e0889, percebam que a parte article/view/ebrasilis.v13.e0889, são idênticos nos dois domínios

Não é tão simples como vocês imaginaram, mas agradeço a tentativa.


Você está usando Wordpress?

Esses links estão em um banco de dados ou são fixos não páginas?
Responder

23/06/2020

Jothaz


Você está usando Wordpress?
Esses links estão em um banco de dados ou são fixos não páginas?


Não é Wordpress é Open Journal System e sim estão em centenas/milhares de base dedados externas, que estão sendo atualizadas, a medida que atualizamos on indexadores principais.
A ideia é um código que possa pegar a URL, assim que o index.php for acessado, fragmentá-la como um SPLIT, por exemplo, e selecionar numa variável, apenas article/view/ebrasilis.v13.e0889 e depois acrescentar www.entomobrasilis.org/index.php/ebras/ no início e redirecionar
Responder

23/06/2020

William Rodrigues

Resolvi galera, muito obrigado a todos
$url = str_replace("ojs/index.php/ebras/article/", "", $_SERVER["REQUEST_URI"]);
if($url!=""){
$redirect = "https://www.entomobrasilis.org/index.php/ebras/article/$url" ;
header("location:$redirect");
}else{
header("location:https://www.entomobrasilis.org");
}
Responder

23/06/2020

William Rodrigues

Ainda mais simples e direto, funcionou melhor
$url = substr($_SERVER["REQUEST_URI"], strpos($_SERVER["REQUEST_URI"], '/')+4);//str_replace($strSearch, "", $_SERVER["REQUEST_URI"]);
$redirect = "https://www.entomobrasilis.org$url" ;
header("location:$redirect");
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários,
consulte nossa política de privacidade.

Aceitar