Nginx 通过数据库获取页面,但基于URL

Nginx 通过数据库获取页面,但基于URL,nginx,Nginx,我有一个URL如下所示的网站: http://example.com/index.php?id=1 -我想把它变成http://example.com/1-page-title-goes-here. 我不想重定向,因为还没有人知道它的index.php?id=1,因为该站点还没有启动 id=1确定页面应该加载的内容。如果id=1,它将从数据库中选择该id,然后在页面上显示相应的信息。非常简单,而且工作做得很好 我正在我的服务器上运行Nginx,我想这就是解决这个问题的方法。。?但我不确定。从我在

我有一个URL如下所示的网站:

http://example.com/index.php?id=1 -我想把它变成http://example.com/1-page-title-goes-here. 我不想重定向,因为还没有人知道它的index.php?id=1,因为该站点还没有启动

id=1确定页面应该加载的内容。如果id=1,它将从数据库中选择该id,然后在页面上显示相应的信息。非常简单,而且工作做得很好

我正在我的服务器上运行Nginx,我想这就是解决这个问题的方法。。?但我不确定。从我在网上看到的情况来看,重写规则将检查/和之前的第一个数字,然后在此基础上进行数据库查找。然而,这难道不意味着你可以在后面键入任何内容,而这仍然是一个合法的链接吗?比如:http://example.com/1-anything-can-go-here-and-it-would-not-matter. 我说得对吗

哪种方法最好?重写以检查第一个数字会起作用,但是URL的最后一部分呢?这样做的最佳方法是什么?提前谢谢


编辑:我刚刚注意到Stackoverflow是这样工作的。如果我在后面加上什么http://stackoverflow.com/questions/32848332/get-page-through-database-but-based-on-the-url 它会将其更改回原始URL。如果我从URL中删除了某些内容,也会发生同样的情况。

最好将其留给后端是的,如果您只是通过id进行搜索,那么在-…之后放置什么并不重要,如果您愿意,您可以通过id和URI@GabrielRodriguez我想要和Stackoverflow一模一样的。它检查ID和标题,如果不匹配,则更改标题。