清洁Url没有参数和?的迹象


Clean Url without Parameter and ? sign

我在很多网站上看到的url都是清晰而完美的,这意味着当我检查他们使用的href时,在代码中是这样的:

<a href="HTTP://domain.com/123>

当我们点击它的时候准确的转到ABC页面这个名字是从数据库中取出的在我的代码中:

<a href="HTTP://domain.com/movie.php?mno=123>

我如何为我的网站做那种类型的URL ?

使用mod_rewrite为Apache。例如,放入.htaccess文件:

RewriteEngine on
RewriteBase /
RewriteRule ^([a-zA-Z0-9_-]*)$ movie.php?moo=$1

假设您的有效id由a-z, a-z, 0-9, _和-组成。现在所有对domain.com/ABC09-_等的查询都将重定向到domain.com/movie.php?moo=ABC09-_

注意,您可能希望将请求的条目ID重写为正确的键值对,而不是将其用作没有值的查询键。在上面,请求的ID将在$_GET['moo']下可用。在您发布的模式中,movie.php?ABC,您将为每个ID使用不同的变量,例如:'ABC'将在$_GET['ABC']下,等等。