Regex 与排除URL的重定向匹配不起作用
我使用了Regex 与排除URL的重定向匹配不起作用,regex,apache,.htaccess,url-redirection,mod-alias,Regex,Apache,.htaccess,Url Redirection,Mod Alias,我使用了RedirectMatch规则,该规则应排除以下两个URL: citycards/citycards位置/munchen/citycards trachtenvogl reichenbachstr-47-munchen citycards/citycards位置s/munchen/citycards-4-you-munchen-hirtenstrasse-18-慕尼黑 我对regex使用此规则,但我得到一个500内部服务器错误: RedirectMatch 301 /
RedirectMatch
规则,该规则应排除以下两个URL:
citycards/citycards位置/munchen/citycards trachtenvogl reichenbachstr-47-munchen
citycards/citycards位置s/munchen/citycards-4-you-munchen-hirtenstrasse-18-慕尼黑
RedirectMatch 301 /citycards/citycards-locations/muenchen/((?!citycards/citycards-locations/munchen/citycards-trachtenvogl-reichenbachstr-47-munchen|citycards/citycards-locations/munchen/citycards-4-you-munchen-hirtenstrasse-18-munchen ).+)$ /citycards/citycards-locations/muenchen/$1
你知道为什么它不起作用吗
/citycards-4-you-munchen-hirtenstrasse-18-munchen)。+)$
在RewriteRule
模式的末尾附近有一个未替换的空格。这肯定会导致500错误,因为空格是分隔符,参数将不匹配(无效标志)
看起来这是一个打字错误,应该简单地删除?您当前的规则是:(分解为多行以更好地显示/理解):
基本上,您的正则表达式表示:
- 匹配
/citycards/citycards位置/muenchen/
- 后面没有下列任何一项
citycards/citycards位置/munchen/citycards trachtenvogl reichenbachstr-47-munchen
(在citycards/citycards位置s/munchen/citycards-4-you-munchen-hirtenstrasse-18-munchen
)18后面有一个空格-慕尼黑
- 匹配所有内容,直到URI结束
/citycards/citycards locations/muenchen/$1
,该URL与匹配的URL基本相同
我看到两个问题
你用什么语言?如果你只需要排除这两个网址,你能在你的应用层手动吗?我们使用德语。。。不,我们必须用其他重定向匹配规则排除更多URL…有趣的是,我问的是您的编程语言。php;-)。。。。。。。。。。。。。你在错误日志中看到了什么?啊。。。我会检查这个明天,但你是正确的空白空间是不对的…但是重定向匹配工作没有排除网址罚款…重定向匹配301 /城市卡/城市卡位置/ MueC陈/ URL从这个类型:/ CITYCARK / CITYCARS位置/ MueCun/BLABLA被重定向到/ CITYCARK / CITYCARK位置/ MUMNENKOK,在我删除空白后,没有500个内部服务器错误!但是regex也不起作用…重定向匹配301/citycards/citycards locations/muenchen/这很好,但是对于regex(包括URL)它不起作用:重定向匹配301/citycards/citycards locations/muenchen/((?!citycards/citycards locations/munchen/citycards-trachendovgl-reichenbachstr-47-munchen | citycards/citycards locations/munchen/citycards-4-you-munchen-hirtenstrasse-18-munchen)。$有什么想法吗?
RedirectMatch
301
/citycards/citycards-locations/muenchen/((?!citycards/citycards-locations/munchen/citycards-trachtenvogl-reichenbachstr-47-munchen|citycards/citycards-locations/munchen/citycards-4-you-munchen-hirtenstrasse-18-munchen ).+)$
/citycards/citycards-locations/muenchen/$1