无法编译正则表达式。 Apache 2.4.18

时间:2016-03-05 18:35:40

标签: regex .htaccess

因此我们的主机已将其服务器更新为最新版本的apache,并在网站上造成了各种错误。主要的一个是apache错误日志中的以下内容,导致主网站出现500错误。

无法编译正则表达式。

RewriteRule ^video-management/([A-Za-z0-9_-\s\+]+)$ manage-videos.php?bizID=$1 [NC,L]
RewriteRule ^video-management/([A-Za-z0-9_-\s\+]+)/delete/([A-Za-z0-9_-\s\+]+)$ manage-videos.php?bizID=$1&delImg=$2 [NC,L]
RewriteRule ^_shared/([A-Za-z0-9_-\s\+]+)/([A-Za-z0-9_-\s\+\.]+)/([A-Za-z0-9_-\s\+\.]+)$ _shared/$1/$2/$3 [NC,L]
RewriteRule ^plugins/([A-Za-z0-9_-\s\+]+)/([A-Za-z0-9_-\s\+\.]+)/([A-Za-z0-9_-\s\+\.]+)$ plugins/$1/$2/$3 [NC,L]
RewriteRule ^admin/([A-Za-z0-9_-\s\+]+)/([A-Za-z0-9_-\s\+\.]+)/([A-Za-z0-9_-\s\+\.]+)$ admin/$1/$2/$3 [NC,L]
RewriteRule ^pages/([A-Za-z0-9_-\s\+]+)/([A-Za-z0-9_-\s\+\.]+)/([A-Za-z0-9_-\s\+\.]+)$ pages/$1/$2/$3 [NC,L]
RewriteRule ^images/([A-Za-z0-9_-\s\+]+)/([A-Za-z0-9_-\s\+\.]+)/([A-Za-z0-9_-\s\+\.]+)$ images/$1/$2/$3 [NC,L]

我无法理解Apache的更新应该如何改变,并查看上面的正则表达式,似乎我看不到会导致此问题的任何错误。

当我评论上述内容时,该网站再次运作(主要是)。

2 个答案:

答案 0 :(得分:0)

我不太明白你的问题。但是你可以将早期版本的apache中的活动模块与当前版本的Apache进行比较,也许某些模块被禁用并且无法识别.htaccess。

检查您的httpd.conf文件。

另一种可能性是.htaccess中的路径 尝试更换:

RewriteBase /

RewriteBase /folderYourHosting/example.com/

答案 1 :(得分:0)

经过几天的抨击,我终于发现正则表达式中有错误。

正确的结果应该是

 ([A-Za-z0-9_\-\s\+]+)

我在仪表板前错过了一个\。