regex - 使用 mod_rewrite 更改永久链接现在会出现内部服务器错误 500

标签 regex wordpress mod-rewrite

我刚刚将我的 WordPress 永久链接从 domain.com/%year%/%month%/%post-slug% 更改为转到domain.com/%post-slug%

我使用了以下mod_rewrite将我所有旧网址重定向到新网址的规则。

RedirectMatch 301 ^/[0-9]{4}/[0-9]{2}/([a-z0-9\-/]+) http://www.site.com/$1

问题是这重定向了我所有基于日期的文件

domain.com/%year%/%month%/%date%

domain.com/%date%

也给出了 404错误。我修改了上面的代码以包含字符计数(最小值为 3 ,最大值为 300 ),如下所示,以解决日期问题

RedirectMatch 301 ^/[0-9]{4}/[0-9]{2}/([a-z0-9\-/]{3,300}+) http://www.site.com/$1

但我现在得到一个500 Internal Server error .

对此的任何帮助将不胜感激。

最佳答案

将规则更改为

RedirectMatch 301 ^/[0-9]{4}/[0-9]{2}/([a-z0-9/-]{3,})$ http://www.site.com/$1

关于regex - 使用 mod_rewrite 更改永久链接现在会出现内部服务器错误 500,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18339816/

相关文章:

java - 使用正则表达式分析Java中的字符串

regex - ElasticSearch 和 Regex 查询

javascript - 在正则表达式本身中包含早期捕获的组

Java:需要从字符串中提取数字

javascript - WordPress 插件不适用于自己的主题

.htaccess 文件导致 AJAX 出现 404 错误

php - 为什么前面没有 "https://"的URL会出现空白页?

php - 从 wordpress/woocommerce 搜索查询中获取不同的结果

php - 部署在 IP 地址上的 Codeigniter 在除索引之外的每个 Controller 上给出 404

apache - 将带有参数的 url 重定向到可读的 url