直接将人们发送到.php地址可能会带来什么问题

  • 本文关键字:问题 地址 php php redirect
  • 更新时间 :
  • 英文 :


我已经阅读了如何在PHP中重定向,但是那里的所有内容都基于拥有HTML页面供用户访问。在我的案例中

这是整体上的.php文件:

<?php
$num = Rand (1,2);
switch ($num) {
case 1: header('Location: http://blah.com/blah'); // "shortURL2"
break;
case 2: header('Location: http://yadda.com/yadda'); // "shortURL3"
break;
}
?>

在我的所有测试中,它似乎都可以正常工作,但是我想确保没有附带的附带(或不那么frigringe)的案例用户会在此沿此问题重定向)路径:

shorturl1.com→ 1 longurl1 .php 2 shorturl [2 | 3] .com→ 3 3 3 longurl [2 | 3] .com

  1. 电子邮件中的链接到子域1,然后重写URL将它们发送到子域2上的.php文件
  2. 上面的代码将人们送到"案例1"或"案例2"子域1
  3. 在两个目的地页面之一上的子域1上的第二轮URL重写
  4. 之一

我已经知道这不是做任何事情的理想方式。这就是各种限制带给我的,如果这些限制可以改变,我会分享它们。可以说这就是我所拥有的,此时我只需要确保每个点击此链接的人最终都会出现在两个站点之一,而不会在某种 nophp中漂浮 - for-me-thanks limbo。。。或更糟。

这取决于您是否正在使用使用前控制器模式的某些(MVC)框架 - 单个入口点PHP初始化资源,DB等,然后路由请求(基于请求URL

上的控制器对象的调用方法)

您使用一些非常简单的Web应用程序,其中每个.php文件本身就是一个前控制器(负责在DB连接等

在第一种情况下,框架将不允许您调用其他文件(.htaccess限制),呼叫会抛出异常(文件尝试使用未初始化/可用的对象)或根本没有发生任何情况(您的文件仅包含某些班级定义,这些定义本身无能为力。

在第二种情况下,您需要保护敏感文件(例如带有数据库登录/密码的db.php),以确保它不会以某种方式打印出其内容(或者更好,以确保无法直接调用它,仅包括在其他.php文件中)

直到您在 .php文件中显示某些秘密(通过 HTML)才出现问题。

相关内容

  • 没有找到相关文章

最新更新