如何将动态网址转换为安全网址

时间:2018-01-03 12:13:06

标签: php user-interface

我的网址与此类似

  http://www.somewebsite.com/sub-category/?q=1

  http://www.somewebsite.com/products/?q=1

  http://www.somewebsite.com/product/?q=61

但是我需要将网址更改为更安全的网址,以便没有人可以输入其他数字并获得具有其他ID的产品,或者我不希望任何人看到?q = 1。有人请帮帮我。

提前致谢

2 个答案:

答案 0 :(得分:1)

您可以添加http://www.somewebsite.com/products/?q=1&hash=xxxx

之类的哈希值

在后端使用密钥生成哈希的位置。 像这样的东西

$productID = 1;
$url = "http://www.somewebsite.com/products/?q=".$productID;
$hash = md5("my-secret-key".$productID);
$url .= "&hash=".$hash;

然后根据您的请求检查散列是否有效。

if(md5("my-secret-key".$_GET['q']) != $_GET['hash']){
    die("Invalid hash");
}

答案 1 :(得分:0)

原则上,您总是可以尝试在URL中键入内容并希望您点击某些内容。

您可以为每种产品的产品ID创建一个哈希,并将其存储在存储产品的同一个表中。

然后你会传递哈希而不是产品ID。

更难以猜测,例如64个字符比猜测一个。