Redirecionamento de um domínio para outro

21/06/2020

7

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,
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.
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
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

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.


Você está usando Wordpress?

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

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
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
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. Para saber mais sobre o uso de cookies,
consulte nossa política de privacidade. Ao continuar navegando em nosso site, você concorda com a nossa política.

Aceitar