.htaccess URL 重写在一夜之间失败



最近发生了一些奇怪的事情。 以下 htaccess 重定向/url 重写代码在一个月内运行良好。但今天开始给出错误代码 500。 我问我的托管服务提供商,他说他将所有代码迁移到新服务器。我不明白为什么它现在不起作用。相同的代码在将近一个月的时间里工作得很好。

我想要实现的:

www.example.com/22     ---should go to-->     www.example.com/view.php?iid=22

法典:

RewriteEngine on
RewriteRule ^([0-9]+) view.php?iid=$1 [NC, L]

PHP 版本 : 7.2

将规则替换为以下内容:

RewriteRule ^(d+)/?$ view.php?iid=$1 [QSA,L]

那是:

使用锚$仅匹配 URI 中的数字,而不匹配标志[...]侧的空格

我不知道如何,但通过从 [NC, L] 中删除 NC 解决了这个问题

新代码如下所示:

RewriteRule ^([0-9]+)$   view.php?iid=$1 [L]

最新更新