MT Blacklist 的 Yaml.pm line 1571 錯誤處理

昨天在試 Movable 的 Blacklist ,發現下面的錯誤訊息。

Can’t locate YAML.pm in @INC (@INC contains: /var/www/cgi-bin/mt/extlib /var/www/cgi-bin/mt/lib /usr/lib/perl5/5.8.0/i386-linux-thread-multi /usr/lib/perl5/5.8.0 /usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.0 /usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.0 /usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.0/i386-linux-thread-multi /usr/lib/perl5/5.8.0 .) at /var/www/cgi-bin/mt/extlib/YAML/Error.pm line 3. BEGIN failed–compilation aborted at /var/www/cgi-bin/mt/extlib/YAML/Error.pm line 3. Compilation failed in require at /var/www/cgi-bin/mt/extlib/Yaml.pm line 1571.


後來就重新裝了一下,結果還是有上面的錯誤訊息。

重新安裝可以參考:
http://140.96.170.136/~chientai/atitri/archives/000734.html

看錯誤訊息是在呼叫 YAML.pm 產生的,但實際上在 extlib 裡面的檔名是 Ymal.pm。這時可能就要改一下程式了,用 vi 開啟 Blacklist.pm:

cd /var/www/cgi-bin/mt/extlib/jayallen
vi Blacklist.pm

以 require Yaml 當關鍵字搜尋,一共有二處,找到之後全部改成大寫的 require YAML。

再來檔名也要改一下把 Yaml.pm 改為 YAML.pm

cd /var/www/cgi-bin/mt/extlib
mv Yaml.pm YAML.pm

最後把 Blacklist_Config 設為可讀寫:

cd /var/www/cgi-bin/mt/extlib/jayallen
chmod 777 Blacklist_Config -R

這樣就大功告成了。

Site Footer

Sliding Sidebar