1

当我将一些项目存储在一个表中,然后希望有一个连接到每个项目的 URL 时,我只有类似 mywebsite.com/item/132 这将显示有关项目表中第 132 个项目的信息。拥有这样的环境是不是很糟糕?我应该让它有像 youtube 这样的东西,每个项目都有一组随机的字符吗?这样做的最好方法是什么?

只需将项目按通常的数字存储在表格中,然后 URL 看起来更像这样?mywebsite.com/item/a19kgjy

然后一个 PHP 脚本“解密”a19kgjy 并获取一个用于从数据库中获取正确项目的数字?

这会让一切变得更慢吗?

4

2 回答 2

2

这很糟糕,因为您正在为服务器添加额外的工作来进行排序。为什么不创建一个这样的表?

CREATE TABLE myTable
(
    ID int AUTO_INCREMENT,
    httpLink varchar(max)
)

在这种情况下,您只会对ID

于 2012-08-06T09:12:50.207 回答
1

我认为这与安全/数据保护问题更相关。这实际上取决于您是否希望其他人可以轻松访问它。有时数字非常敏感,最好使用散列键,例如,让我们说 transaction_id 或 user_id,您向其他人公开您的业务一天有多少交易或您的系统有多少用户,这可能间接导致到一些脆弱性。但是如果你想实现哈希方法,我建议你在数据插入期间生成随机哈希,而不是在查询期间使用解密方法。这将为您节省一些处理能力。但请记住为表的哈希字段编制索引。无论如何,无论是数字还是散列,都不是真正的搜索引擎友好 url。

于 2012-08-06T09:20:52.397 回答