当前位置: 首页 > 面试题库 >

mod_rewrite给我404

赖运珧
2023-03-14
问题内容

我想重写链接 index.php?page=entry&id=15&action=edit到entry/15/edit。
这是我的.htaccess现在的样子:

# Turn the Rewrite engine on
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f

# Rewrite rules
RewriteRule ^([^/]*)(/([^/]*)/?)([^/]*)?$ index.php?page=$1&id=$2&action=$3 [QSA,L]

给我404。

有什么问题?


问题答案:

括号太多。您可能感染了Lisp。

尝试:

RewriteRule ^([^/]*)/([^/]*)/?([^/]*)?$ index.php?page=$1&id=$2&action=$3 [QSA,L]


 类似资料:
  • 说明 一个基于一定规则的实时重写URL请求的引擎 状态 扩展(E) 模块名 rewrite_module 源文件 mod_rewrite.c 兼容性 仅在 Apache 1.3 及以后的版本中可用 概述 此模块提供了一个基于正则表达式分析器的重写引擎来实时重写URL请求。它支持每个完整规则可以拥有不限数量的子规则以及附加条件规则的灵活而且强大的URL操作机制。此URL操作可以依赖于各种测试,比如服

  • 我的.htaccess中有这段代码,我需要转换到microsoft azure主机,因为它不起作用。 有人能帮我吗?谢谢各位

  • 问题内容: 我没有运气让我的.htaccess与mod_rewrite一起工作。基本上,我要做的就是从“ http://www.example.com ”和“ https://www.example.com ”中删除“ www ”。 如果我缺少任何内容(conf文件等,请通知我,我将对此进行更新) 这是我的.htaccess文件(位于@ / var / www / site / trunk / h

  • 问题内容: 我正在编写一个小型CMS,以更好地了解它们的工作方式并学习有关PHP的一些新知识。但是,我遇到了一个问题。 我想使用mod_rewrite(尽管如果有人有更好的解决方案,我会尝试使用它)来生成漂亮的干净URL,所以site.com/index.php?page=2可以改为site.com/tools 据我了解,每次添加新页面时,我都需要更改.htaccess文件,这是我遇到问题的地方,

  • 我有以下重写规则, 重写引擎上 重写Cond%{REQUEST_FILENAME}!-f 重写Cond%{REQUEST_FILENAME}!-d 重写规则 ^(.*)$ ci.php?/1美元[L] 上面是抹去GET参数。在阅读了这里的一些帖子后,我使用了[QSA]参数,希望GET变量会附加到url中。但是它不起作用。 重写引擎上 重写Cond%{REQUEST_FILENAME}!-f 重写C

  • 问题内容: 我有一个简单的程序: 当我运行该程序时,我看到的只是用于输出。我原本希望我们会遇到第一轮,然后是,然后是etc。 这是由于这样的事实,一旦我们尝试在左侧重新声明,其值就会重置为? 如果有人可以指出我的详细情况,那将很棒。 更改为,似乎正在按预期方式打印数字。我对它达到最大32位值的速度感到惊讶! 问题答案: 该问题是由于整数溢出引起的。 在32位二进制补码算法中: 确实确实开始具有2的