我想知道我们是否可以实现这样的目标:
example.com/apps?id='blahblah'
转换为example.com/apps/id/blahblah
即。参数成为页面本身。我想为每个id创建单独的url但动态。这可能是在PHP或任何其他解决方法。
答案 0 :(得分:1)
你需要使用.htaccess来实现这一点。
.htaccess基本上将网址重写为原始位置。所以你要在你的问题中做的就是这样:
RewriteEngine on
RewriteRule apps/id/(.*?)$ apps?id=$1
答案 1 :(得分:1)
你可能会被低估,因为" mod重写在php"已经广泛记录了教程和文章。尝试在这里或在Google上搜索它,你会发现很多结果。
无论如何,如果你不能或不能使用Apache的mod_rewrite
,你可以通过解析HTTP请求并相应地处理纯PHP中的相同操作。
例如
$request_path = $_SERVER['PATH_INFO'];
$request_path = explode("/", $request_path);
// example.com/apps.php/id/blahblah
// $request_path[0] => "example.com"
// $request_path[1] => "apps.php"
// $request_path[2] => "id"
// $request_path[3] => "blahblah"
注意我向.php
添加了apps
个扩展名。如果您希望隐藏.php
扩展程序,则无论如何都必须使用mod_rewrite
。
从这里开始,您可以使用$request_path
来确定请求的内容。