【问题标题】:Adding a Rewrite rule to my PHP code向我的 PHP 代码添加重写规则
【发布时间】:2014-08-11 06:31:49
【问题描述】:

我无法找到令人满意的答案,而且我对重写规则非常了解,但就是找不到实现这一目标的方法。我想剪掉我地址的一部分:

/entry.php?id=howdy-world

所以,我希望它看起来像这样:

/entry/howdy-world/

我知道如何指向默认文件,或重写获取值以在斜杠后变成数字,但要修剪的部分有点在中间。怎么处理?

【问题讨论】:

  • 你一定没有看得很辛苦。这是大多数开始重写教程的基础。

标签: php .htaccess mod-rewrite


【解决方案1】:

以下是如何从一个 url 转发到另一个的基本语法。下面有几个部分

  • ([^/] +):匹配任意字符多次,直到出现一个斜线。 ex: entry/howdy-world/
  • $1:这将采用 entry/ 之后的内容并将其附加到所需的 url。 例如:entry.php?id=howdy-world

更多关于重写的信息可以在Apache website找到


 RewriteEngine On
 RewriteRule ^entry/([^/]+)$ entry.php?id=$1 [L]

 # Variations of above rule depending on server setup
 # RewriteRule ^entry/(.+)$ /entry.php?id=$1 [L]
 # RewriteRule ^entry/(.+)$ http://www.example.com/entry.php?id=$1 [L]

【讨论】:

  • 好的,所以我已经尝试了很多次,即使我正在寻找它,问题是它不起作用。不知道确切的原因,但它似乎并没有改变 URL,第二件事是当我应用任何这个时,我得到了推荐错误。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多