VPS 上使用phpquery Class 'DOMDocument' not found
將網站般到VPS上,發現以前寫的程式爬蟲突然都失效,打開一片空白,把Wordpress都架設好後就沒甚麼精力去除錯,今天有空就來解決這問題。
第一步 打開php錯誤訊息 (ubuntu)
/etc/php/7.2/apache2/php.ini
很多主機基於保安理由, 將 PHP 執行時的錯誤訊息隱藏, 當 PHP 程式執行時遇到錯誤, 即使是 run time error 這類錯誤, 都只會顯示空白內容。
原因是在 php.ini 設定了這兩行:
display_errors = Off
error_reporting = Off
將它們都改成On
display_errors = On
error_reporting = On
在打開你寫的爬蟲,就會看到錯誤訊息,會看到
Fatal error: Class 'DOMDocument' not found in /home/.../lib/Zend/Feed/Abstract.php on line 95
這是因為空間架設時沒有安裝到其他套件,只要用SSH進主機打以下指令即可修復。
// Debian / Ubuntu
sudo apt-get install php-dom
or
//Centos / Fedora / Red Hat
yum install php-dom
PHPquery : https://code.google.com/archive/p/phpquery/