【问题标题】:Simple mod rewrite with PHP Get values使用 PHP 获取值的简单 mod 重写
【发布时间】:2012-12-02 17:46:45
【问题描述】:

谁能告诉我我到底做错了什么?

试图采取:

search.php?key=23&category=testing

然后制作:

/23/testing.html

用这个:

RewriteRule ^([^/]*)/([^/]*)\.html$ /?key=$1&category=$2 [L]

对于我的生活,我无法弄清楚......或者如果有更好的方法,请指出正确的方向。

** 更新

好的,在放弃这个之后,我终于联系了托管公司,看看我的域是否有问题导致它无法正常工作。这是他们告诉我的:

  1. 你没有重写条件,你只有一个简单的重写。为了让代码>始终正常工作,您通常应该使用有效模式设置“RewriteCond”。

  2. 您使用过“?”您的代码中的问号字符虽然这是一个转义 > 字符,这样做只会导致基于您的代码重写 index.php 作为 >问号被转义后的所有内容。

请考虑在您的代码中使用“RewriteCond”,并使用正则表达式正确转义>“?”性格,避免意外行为。

谁能帮帮我?谢谢!

【问题讨论】:

  • 确保将 R 放入参数 [L,R] 中。我通常构建一个快速的自定义 MVC 并让每个请求都通过 index.php。这样我就可以编写出我的永久链接。
  • 仍然没有骰子。我不需要对我的 PHP 文件做任何其他事情吗?我可以得到一个简单的 hmtl 重定向来工作,所以我知道路径等正在工作......但对于我的生活,我无法弄清楚为什么这不起作用..
  • 重写规则应该以^/开头我相信。

标签: php apache mod-rewrite


【解决方案1】:
RewriteRule ^/([^/]*)/([^/]*)\.html$ /?key=$1&category=$2 [L,R]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多