【问题标题】:htaccess file not working in php?htaccess 文件在 php 中不起作用?
【发布时间】:2013-09-04 19:56:43
【问题描述】:

我有一个代码,但这个代码不起作用

这是htaccess代码

RewriteEngine on
RewriteRule ^([0-9]{1,10000})-([a-zA-Z0-9_]{1,10000})$ news.php?id=$2&namenews=$3  

这是php代码

<a href='$slidefetch->id_ar-$slidefetch->name_ar'>

【问题讨论】:

  • 你需要闯入 php 并回显它。 &lt;?php echo $slide... ?&gt;
  • 圣……10000为上限!
  • @Class - 这是很多数字。但谁知道呢,也许 20 年后,它会派上用场。
  • @moto 我认为你误解了{1,10000} 的使用,这意味着允许的字符数量,而不是数字的范围。如果您想要最多 5 位数字,您可以使用 [0-9]{1,5},这将允许从 1 到 99999 的数字。如果您向我们展示您希望重定向的 URL 示例会更容易。

标签: php .htaccess mod-rewrite


【解决方案1】:

我认为你做错了一些事情。在重写规则中,你有 2/3 美元,而它应该是 1/2 美元。另外,您还有 {1,10000},这意味着最少 1 个数字到 100000 位数字!您可能想要像 {1,6} 或任何您的限制。此外,我相信根据浏览器/搜索引擎的不同,url 的长度是有限制的,大约 2000 个字符,但最好让它们更短!

如果您实际上想要 1-10000,您可以尝试:

RewriteRule ^([1-9][0-9]{0,3}|10000)-([a-zA-Z0-9_]{1,6})$ news.php?id=$1&namenews=$2

否则:

RewriteRule ^([0-9]{1,6})-([a-zA-Z0-9_]{1,6})$ news.php?id=$1&namenews=$2
             (----$1----) (-------$2--------)

我不确定您的 a 标签是否有回显,但您应该执行以下操作:

echo '<a href="', $slidefetch->id_ar, '-', $slidefetch->name_ar, '">';

【讨论】:

  • 我在 htaccess 文件和 php 代码中有“single.php?id=1”我想要它“1-name news.html”。
猜你喜欢
  • 1970-01-01
  • 2014-05-23
  • 2016-02-26
  • 2015-03-28
  • 1970-01-01
  • 2013-04-14
  • 2017-08-10
  • 1970-01-01
  • 2015-06-04
相关资源
最近更新 更多