.htaccess 将URL中以article开头的文件名中的下划线更改为连字符

.htaccess 将URL中以article开头的文件名中的下划线更改为连字符,.htaccess,.htaccess,我尝试使用在stackoverflow上其他地方找到的一些代码,但我想修改它,我不知道如何修改 RewriteRule ^([^_]*)_+(.*)$ $1-$2 [E=underscores:Yes,N] RewriteCond %{ENV:underscores} ^Yes$ RewriteRule ^(.+)$ /$1 [R=301,L] 这会将所有下划线更改为连字符。但是,我需要将这组语句限制为仅以以下开头的URL: 换句话说,只有当文件名以article开头时,这些规则才适用 有人

我尝试使用在stackoverflow上其他地方找到的一些代码,但我想修改它,我不知道如何修改

RewriteRule ^([^_]*)_+(.*)$ $1-$2 [E=underscores:Yes,N]
RewriteCond %{ENV:underscores} ^Yes$
RewriteRule ^(.+)$ /$1 [R=301,L]
这会将所有下划线更改为连字符。但是,我需要将这组语句限制为仅以以下开头的URL:

换句话说,只有当文件名以article开头时,这些规则才适用


有人能帮忙吗?

试试这个,看看这个是否对你有用

RewriteRule ^([^_]*)_+(.*)$ $1-$2 [E=underscores:Yes,N]
RewriteCond %{ENV:underscores} ^Yes$
RewriteRule ^article(.+)$ /article$1 [R=301,L]

哇!我说得太快了。这导致服务器崩溃。内存不足。这就是你要求的。就问题本身而言,它回答了你的问题。而且我还做了测试。如果你是OOMing,你需要找到根本原因。启用重写日志,并通过日志进行其他研究。不要以为这是重写。您的服务器出现问题。