所以我們的主機已經更新他們的服務器到最新版本的Apache,並導致網站上的各種錯誤。主要的是在apache錯誤日誌中出現以下內容,導致主網站上出現500錯誤。正則表達式無法編譯。 Apache 2.4.18
無法編譯正則表達式。
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改變,並期待在上述正則表達式,似乎也看不出這將導致此問題的任何錯誤。
當我註釋掉上述內容時,網站再次運行(主要是)。
您也應該指定您的原始版本,通常使用這些知名產品很容易找到描述您確切問題的遷移指南。 – Aaron
@Aaron - 我已經看過這種類型的錯誤,似乎沒有多少人得到這個錯誤。幸運的是,我們的主機更新了Apache從多年前的版本(不確定舊版本),但現在它的版本2.4.18 - 更新後,我收到錯誤「正則表達式無法編譯」 Apache錯誤日誌和網站的500錯誤。 如果我註釋掉上面的行,網站會加載,但由於上面的重寫規則被註釋掉,所以加載不正確。 –
我不知道,這一切對我都很好。您可以刪除AZ類,因爲您用NoCase標誌替換,但這不會解決問題 – Aaron