2012-07-16 34 views
0

我想運行一個XSLT過程:PHP的XSLTProcessor中生成服務器的500錯誤

$xslt = new XSLTProcessor(); 

非常標準,但是我有點生氣,因爲它是產生一個服務器的500錯誤,我試圖找到PHP錯誤日誌無效,並通過httpd錯誤日誌檢查,所以我沒有看到與此問題有關的錯誤。

我目前正在運行一個安裝了PHP 5.3.3(最新版本)的Centos v6 64bit操作系統,我已經做了php-xml的yum安裝,因爲php-xsl不存在,我想知道是否有其他人可以在我的本地Windows機器上看到爲什麼這是死的時候,這是幸福的日子!

回答

3

錯誤500指示分析錯誤或另一個致命錯誤,所以我的第一個猜測是XSLTProcessor類缺失(XSL模塊尚未加載)。確保xsl.so已被添加爲已加載的擴展名(擴展名= xsl.so),並且它已與xml模塊一起安裝(應該是 - 據我所見,它存在於CentOS的php-xml中)。

做一個phpinfo()調用,看看xsl/xml是否可用。檢查error_log的值以查看特定PHP錯誤的記錄位置,確認error_reporting未設置爲E_NONE/0,並確保已啓用log_errors(如果不是,則不會在錯誤日誌中看到任何錯誤或PHP日誌)。

如果你仍然不明智,只需嘗試var_dump(class_exists(「XSLTProcessor」))來查看該類是否可用。

儘管這不是您需要做的確切答案,但它應該爲您提供足夠的信息,以便根據您提供的信息找出問題。

+0

謝謝,問題是當安裝php-xml php-common與php-common53衝突以更新CentOS上的php時,它似乎是一個已知的bug,我沒有安裝Centos並安裝了Ubuntu來糾正我的問題漂亮的大手術來解決這個問題,雖然:( – John 2012-07-16 22:45:09