在PHP文件中通过MD5或类似方式隐藏时间

在PHP文件中通过MD5或类似方式隐藏时间,php,md5,strtotime,Php,Md5,Strtotime,我的客户只想让用户访问某个页面几天。之后,客户必须再次联系他。为此,我创建了以下代码 <head> <style> body {height: 100%;width: 100%;overflow: hidden;padding: 0px;margin: 0px;} iframe {border: 0px;width: 100%;height: 100%;} </style> </head> <html> <body> <

我的客户只想让用户访问某个页面几天。之后,客户必须再次联系他。为此,我创建了以下代码

<head>
<style>
body {height: 100%;width: 100%;overflow: hidden;padding: 0px;margin: 0px;}
iframe {border: 0px;width: 100%;height: 100%;}
</style>
</head>
<html>
<body>
<?php
$today = strtotime(date("Y-m-d"));
$expireDate = strtotime("2013-12-01");
if ($today < $expireDate) {
echo "<iframe src='http://www.domain.eu/active'>";
} else {
echo "<iframe src='http://www.domain.eu/deactive'>";
}
?>
</body>
</html>

正文{高度:100%;宽度:100%;溢出:隐藏;填充:0px;边距:0px;}
iframe{边框:0px;宽度:100%;高度:100%;}

您应该用PHP(在iframe中)解决这个主要问题:


另一种解决方案:


或者您可以使用base64_encode()来散列时间戳,而不是使用md5。

您使用的是iFrame。是什么阻止客户端直接访问URL

假设您可以控制iframe中包含的网站:

<?php
  if( $today >= $expireDate ) 
  {
    include_once 'inactive.php';
  }
  else 
  {
    include_once 'active.php';
  }
?>
给每个客户端一个访问密钥。将该访问密钥存储在数据库中,并注明有效期。使他访问的URL需要访问键(例如GET参数),否则重定向到其他页面

如果您无法控制站点,请在服务器上上载脚本,该服务器只执行上述访问控制,然后从实际URL返回内容


无论哪种方式,为了确保安全,您需要让请求通过您控制的脚本/服务器进行处理。

那么您希望您的客户端能够访问代码并保护相同的代码不被滥用?算了吧。通过混淆实现的安全性始终是糟糕设计的结果,而糟糕的设计也会导致这种结果。为客户端提供完全访问权限或将代码放在安全位置。您似乎在错误的位置应用了此保护-用户可以直接转到
http://www.domain.eu/active
@Saturnix我同意你的说法。因此,停止了上述的。可能重复的“但上面的代码位于index.php文件中,客户端必须将其上载到服务器”。因此,这不会解决任何问题。我可以接受你的if语句,删除它并将页面重新加载到服务器。我们谈论的不是在安全服务器上运行的PHP,而是PHP代码,它可以被同一个人看到,并且应该受到保护。哦,这对他来说很好:)那么唯一的方法就是以某种方式破坏你的代码。您可以使用PHP openssl\u加密/openssl\u解密。但此人仍然可以修改您的代码。我仍然建议在iframe中使用服务器请求,正如我上面回答的那样。