【问题标题】:My .htaccess RewriteRule is "not working"我的 .htaccess RewriteRule 是“不工作”
【发布时间】:2011-01-31 22:56:37
【问题描述】:
RewriteRule ^word-(.*)/(.*)/([a-z][a-z])/([0-9]+)?/$ /keywordbycountry.php?word=yes&keyword=$2&cc=$3&page=$4 [L]

$2 = 是关键字(任何东西) $3 是国家代码(只有 2 个小写字母) $3 是页面(只有数字)

但由于某种原因它不起作用

【问题讨论】:

  • 请发布您请求的网址,您期望什么以及您得到什么
  • 用 php 更容易完成,而不是用 apache 重写来完成所有事情
  • 您能否详细说明“不工作”。事情做错了变量吗?您收到 500 错误吗?还有什么?试着做一个“var_dump($_GET);”在keywordbycountry.php 文件中查看传入的内容。

标签: php rewrite rule


【解决方案1】:

".*" 可能是问题所在,它会匹配任何内容,因此也会匹配 '/' 直到字符串结束。

使用 [^/]+ 代替:

RewriteRule ^word-([^/]+)/([^/]+)/([a-z][a-z])/([0-9]+)?/$ /keywordbycountry.php?word=yes&keyword=$2&cc=$3&page=$4 [L]

【讨论】:

    【解决方案2】:
    RewriteRule ^word-(.*)/([a-z]+)/([a-z][a-z])/([0-9]+)?/$ /keywordbycountry.php?word=yes&keyword=$2&cc=$3&page=$4 [L]
    

    【讨论】:

      猜你喜欢
      • 2019-03-17
      • 1970-01-01
      • 2018-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-10
      • 1970-01-01
      相关资源
      最近更新 更多