如何将用户从网页或其他网页重定向到网页

时间:2018-03-16 17:07:28

标签: php html http redirect https

我需要这样的东西

<?php
  if http://growtopiajaw.my.vg
  else if https://growtopiajaw.my.vg
  then
  header('Location: https://growtopiajaw.my.vg/homepage.html', true, 301);
  exit();
?>

基本上,如果我输入URL growtopiajaw.my.vg,它会自动重定向到https://growtopiajaw.my.vg/homepage.html。但是当我输入网址https://growtopiajaw.my.vg时,它会在无限循环中保持刷新。

我知道有些人会尝试访问https://growtopiajaw.my.vg页面。

我不希望我的网站对用户造成问题。此外,您可以尝试访问网站https://www.growtopiajaw.my.vg。您可以看到它不断刷新页面。

所以,我正在向任何可以帮助我的人寻求帮助。谢谢!

  

编辑:

好的,所以我的问题不太清楚。我实际上的意思是这样的。将http://growtopiajaw.my.vghttps://growtopiajaw.my.vg(如果用户转到此网址)重定向到https上的特定页面,该页面生成链接https://growtopiajaw.my.vg/homepage.html。我目前在http://growtopiajaw.my.vg/index.html中有以下代码。

<?php header('Location: https://growtopiajaw.my.vg/homepage.html', true, 301); exit(); ?>

服务器将自动加载index.html,因此它将重定向到页面https:/growtopiajaw.my.vg/homepage.html。 (我不能发布超过8个链接。抱歉)

3 个答案:

答案 0 :(得分:4)

所以这里有两种可能适用的场景......

场景1 - 将所有HTTP流量重定向到HTTPS

您只需使用以下内容向项目的根目录添加.htaccess即可实现此目的......

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

请注意此处的重定向类型...它是301,转换为永久重定向(与302相对应,转换为临时重定向)

Source: GoDaddy

场景2 - 将登录页面重定向(仅)HTTPS

目标网页基本上是PAGE_NAME.EXT。这可以有多种形式......例如,请考虑以下来自托管服务提供商的摘录 -

  

我们的Web服务器按此顺序查找索引文件:

     

index.html index.htm index.shtml index.php index.php5 index.php4   index.php3 index.cgi default.html default.htm home.html home.htm   Index.html Index.htm Index.shtml Index.php Index.cgi Default.html   Default.htm Home.html Home.htm placeholder.html

     

如果是顶级的   您的网站包含一个包含任何这些名称的文件,该文件将会   当访问者没有指定文件名时显示。

Source: TigerTech

为简单起见,我们假设您的默认着陆页为index.html

在这种情况下,只需在项目的根目录中创建index.html并添加以下内容 -

<?php
    header("HTTP/1.1 301 Moved Permanently");
    header("Location: https://growtopiajaw.my.vg/homepage.html");
    exit();
?>

现在,任何加载//growtopiajaw.my.vg的尝试都应该将用户带到https://growtopiajaw.my.vg/homepage.html

请注意,这只会在用户输入growtopiajaw.my.vg网址时重定向 - 如果他们转到growtopiajaw.my.vg/about.html那么毫无疑问会将他们带到HTTP这样的版本页。

答案 1 :(得分:1)

将一个名为index.php的php文件放在根目录中。把代码写进去。

<?php
  header('Location: https://growtopiajaw.my.vg/homepage.html');
  exit;

现在,对http://growtopiajaw.my.vghttps://growtopiajaw.my.vg的所有请求都将重定向到https://growtopiajaw.my.vg/homepage.html

答案 2 :(得分:1)

我建议您将homepage.html重命名为index.php,然后在doctype代码

上方添加以下代码
<?php
    if( !isset( $_SERVER['HTTPS'] ) ) {
        header( "location: https://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]" );
        exit();
    }
?>

这完全基于无法在服务器本身上设置301规则。否则请使用@Rushikumar建议的内容。