我想知道如何处理一个我认为有些泛泛的问题。但我只是不确定它应该如何完成。所以希望人们可以找到可能形成错误的想法和坏术语的方法。
我做了一个类似小型服务的例子,没有什么应该实际使用。它是用PHP编写的,使用的是mysql。好吧,这只是我无法弄清楚的一个问题,我觉得我之前遇到过这个问题。
问题是扩展生成的url时(为简单起见,我们假设基本URL为http://a.com
,并且链接按自动增量索引排序,所以我只是在给出一个镀锌的URL时给出数据库索引。
对于tinyurl,链接将是例如:http://tinyurl/abcd
然而,我使用了一个参数并最终做了http://q.com?u=0
我想如果我想拥有像第一个那样的格式,我可以在我的apache服务器中设置.httaccess使用自定义404页面,所以当我去:http://a.com/0
我实际上会得到404,重定向到我自己的404.php,并在该页面处理数据库查找并重定向到真正的URL。
我的问题是,我只是觉得使用404作为“功能”有点脏。而我的问题是,这是否是一般的方法,或者是否有其他一些我不知道的方法。
对不起咆哮,谢谢你的任何信息!
答案 0 :(得分:1)
你应该看看mod_rewrite!
在.htaccess文件中,您可以执行以下操作:
RewriteEngine On
RewriteRule ^([A-Za-z0-9-]+)/?$ index.php?u=$1
这可能不是最好的规则,但那里有很多教程!