最近发生了一些奇怪的事情。 以下 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]