【问题标题】:htaccess first page masking multiple variableshtaccess 第一页屏蔽多个变量
【发布时间】:2014-02-06 00:58:36
【问题描述】:

如何在 htaccess 上屏蔽第一类页面 (page/1)。我需要一行代码吗?

RewriteRule ^animal$ categorie.php?cID=1&page=1 [L]
RewriteRule ^animal/page/([0-9]+)$ categorie.php?cID=1&page=1$ [L]

我的另一个类别是这样的:

www.domain.com/women  = domain.com?catID=2&page=1
www.domain.com/women/page/2 = domain.com?catID=2&page=2

我有 11 个类别

对不起英语。

【问题讨论】:

  • 到底是什么问题?

标签: .htaccess mod-rewrite redirect rewrite


【解决方案1】:

不幸的是,如果您要将类别 name(动物、女性等)转换为 ID number,则必须这样做逐案。考虑传递类别 name (catName=$1) 而不是数字 cId=nnn。然后您将在您的 PHP 代码中设置 cId inside

如果没有给出页面,您将需要一个单独的 RewriteRule 来处理默认的第 1 页。

RewriteEngine On
RewriteRule  ^([^/]+)/?$  /category.php?catName=$1&page=1 [QSA]
RewriteRule  ^([^/]+)/page/([0-9]+)/?$  /category.php?catName=$1&page=$2  [QSA]

是一种方法。

现在,在 /category.php 中,您有 $_GET['catName'] 可以查找 $catID ,并且应该设置 $_GET['page']。为了安全起见,请检查它们是否使用 isset() 设置,并可能检查有效值。

【讨论】:

  • 这不是我想要的。这是类别,在类别下有一些新闻页面。这次全部混合。例如:RewriteRule ^animal/([a-z0-9-]+)$ news.php?url=$1&cID=1 [L]
【解决方案2】:

我是这样解决的。

RewriteRule ^(animal|women|live|football)$ /categorie.php?cat=$1&page=1 [L]
RewriteRule ^(animal|women|live|football)/page/([0-9]+)$ /categorie.php?cat=$1&page=$2 [L]

谢谢

【讨论】:

  • 这基本上是我的建议,只是你只为特定的类别名称而不是任何名称。
  • 是的,我的类别都稳定。为此,我必须快速查询。这个唯一的类别有新闻、画廊、标签,我必须拆分并快速发送重写。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-13
  • 2011-11-16
  • 1970-01-01
相关资源
最近更新 更多