如何在.htaccess文件中指定一个范围以重定向URL

3

我正在尝试重定向URL,如果ctatId在45到600之间,则像下面这样

<pre> RewriteEngine on RewriteCond %{REQUEST_URI} Delhi/(.*)/[45-600] RewriteRule Delhi/(.*)/[45-600] pages/sub_category.php?city=Delhi&catId=$2 </pre>

但问题是它还会为catiId = 4和以4开头的每个catId(例如41,42等)重定向URL。 我认为在指定范围时存在一些问题。

谢谢

1个回答

1

你需要使用正则表达式,这意味着你需要像这样的东西:

(4[5-9]|[5-9][0-9]|[1-6][0-9][0-9])

即:

  • 以4开头,接下来是5-9
  • 或者以5-9开头,接下来是另一个数字
  • 或者以1-6开头,接下来是另外两个数字

所以您只需要:

RewriteRule Delhi/(.*)/(4[5-9]|[5-9][0-9]|[1-6][0-9][0-9]) pages/sub_category.php?city=Delhi&catId=$2

1
(4[5-9]|[5-9][0-9]|[1-5][0-9]{2}|600),但不包括 601-699。 - Croises

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接