php - 如何确保始终只使用干净的 URL?

标签 php .htaccess

假设我的网站在 URL 看起来像这样时会执行某些操作 mysite.com/index.php?myparam=test

在 .htaccess 中,我添加了以下行:

#RewriteRule ^([a-z]+)$ /index.php?myparam=$1 [L]

效果很好! URL mysite.com/test 将相应地重定向并且一切正常

我想摆脱肮脏的 URL,这样如果有人手动键入 mysite.com/index.php?myparam=test 他将被重定向到 mysite.com/test 并且仍然可以工作,而不会进入无限期循环..

最佳答案

如果你有“路由”的想法,你有将参数转换为 URL 的机制,并从输入的 URL 获取执行参数,如果有人手动输入执行参数,你将他重定向到你从路由机制获取的 URL。

关于 symfony 1.4 框架中路由机制的一些信息:

http://www.symfony-project.org/jobeet/1_4/Doctrine/en/05

我在几个小时内为我的大学项目编写了一个路由机制,因此有可能拥有一个。如果不是,最流行的 [恕我直言] 路由库是 Horde:

http://dev.horde.org/routes/

关于php - 如何确保始终只使用干净的 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6029159/

相关文章:

php - 对于SQL行计数,使用PDO rowCount还是count(*) AS更有效率?

wordpress - 移动互联网导致样式和脚本受阻

regex - 用破折号替换所有正斜杠

apache - .htaccess 在未经授权的文件夹访问时重定向到 404(未找到)消息

apache - 如何让apache为414错误加载自定义页面

php - codeigniter 无法在 Linux 上运行

php - 按每年唯一的月份分组,而不仅仅是月份

php - 使用 PHP 以不同方式解析 SOAP 响应

php - Laravel - 无法使用 Blade 从多维数组中获取值

php - 使用 PHP 进行即时搜索