代码之家  ›  专栏  ›  技术社区  ›  user2130687

使用meta在php中重定向,但文件在另一个文件夹中

  •  0
  • user2130687  · 技术社区  · 13 年前

    我有一个小问题,我一直在寻找解决方案。

    我想在我的用户登录后重定向我的页面,但我会将他们登录到一个安全的服务器。我在apache上使用虚拟主机,所以一个是http页面,另一个是用于安全加密连接的https服务器。

    在我的login.php上,我有这个

    if( $usr->userLogin() ) {
        echo "Welcome, now you can continue to our secure webpage. You will be automatically redirected in 5 seconds.....";
        echo "<meta http-equiv=Refresh content=5;url=index.php>";
    } else {
        echo "Incorrect Username/Password, please try again.....";
        echo "You will be automatically redirected in 5 seconds.....";
        echo "<meta http-equiv=Refresh content=5;url=login.php?id=1>";
    }}
    

    但实际上,我想要的是,与其重定向到/var/www/http上的index.php文件,不如重定向到目录/var/www/https上的index.php/

    这是我的问题,我试过很多东西,但那条线不会是这样

    echo "<meta http-equiv=Refresh content=5;url=index.php>";
    

    还有一个问题,我正在使用VPN连接到服务器,所以我无法像这样连接 echo "<meta http-equiv=Refresh content=5;url=https://www.url.com>"; 我不能去DNS解析名称,然后获取IP,就像它是一个VPN一样,地址是内部的。我不能放任何外部地址,因为问题会持续存在,这是我真正的问题。有什么方法可以在内部做到这一点吗??

    非常感谢你的帮助

    提前谢谢。

    光盘

    2 回复  |  直到 13 年前
        1
  •  0
  •   Luceos    13 年前

    使用PHP头:

    header("location: <url>");
    

    就像这样:

    header("location: https://<etc>"); // redirect to different page but only if no other output has been generated
    exit; // prevents further execution of code
    

    请注意,您不能重定向到文件路径,只能重定向到url。因此,如果你想为HTTPS页面提供服务,你的网络服务器必须通过域/url为其提供服务。因此,您需要使用SSL证书并配置Web服务器,以便从https目录中提供https(端口443)请求。

    我希望这是有意义的;)

    如果你想继续使用html重定向(也许你在html中使用重定向,或者你不能使用php重定向):

    echo "<meta http-equiv=Refresh content=5;url=https://<domain>/login.php?id=1>";
    

    看到你对另一个关于你的VPS的答案的评论。你仍然需要配置你的服务器来处理对443(ssl)端口的请求。即使你的服务器有动态IP或你通过VPN连接,你也可以随时编辑你的vhosts文件,将某个(不存在的)域指向某个IP,即使它是本地、网络或VPN隧道IP。此时您的主要关注点是正确配置服务器。

        2
  •  0
  •   Hanky Panky    13 年前

    为其提供https索引文件的完整url:

    echo "<meta http-equiv=Refresh content=5;url=https://YourHTTPSURL.com/index.php>";
    

    编辑:

    正如评论中所讨论的,您可以使用这样的URL:

    https://192.168.1.1:443/index.php
    
    推荐文章