2009-06-02 51 views
0

我想從我不幸的是我在最後一道關卡掉落紐約時報(http://code.nytimes.com/projects/xslcacheXSLT緩存問題

安裝這個PHP模塊。我已經安裝了它,添加到我的php.ini中,但是在我的PHP代碼中運行時出現此錯誤。

Fatal error: Class 'xsltCache' not found in... 

我的PHP代碼是由紐約時報網站

$xslt = new xsltCache; 

任何想法,爲什麼這可能發生的描述?

我的安裝腳本模塊是

cd ~ 
mkdir setups 
cd setups 
wget http://code.nytimes.com/downloads/xslcache.tar.gz 
tar -xvf xslcache.tar.gz 
cd xslcache 
phpize && ./configure --with-xslcache=/usr/lib/libxslt.so --with-xsl-exsl-dir=/usr/lib/libexslt.so 
make 
make install 

而且似乎工作完全正常,沒有錯誤,php.ini文件是好的。我通知過的東西,它不會在phpinfo()中顯示出來。

+2

對於目前用戶正在查找此問題的用戶:請注意,PHP> = 5.4的xslcache必須進行修補才能編譯(pecl安裝程序也會失敗)。我在這裏爲需要幫助的人寫了一篇簡短的文章:http://michaelsanford.com/compiling-xslcache-0-7-1-for-php-5-4/ – msanford 2013-03-22 23:01:35

回答

2

檢查您是否將擴展名添加到了正確的php.ini文件中。

如果您有一個PHP目錄,您可能有一個PHP目錄,但是您想要添加擴展名的目錄可能位於您的服務器目錄中。

I.E.在我的電腦上,要修改的正確的php.ini是apache \ bin \ php.ini

P.S.不要忘記重新啓動服務器。

0

這聽起來像你沒有加載擴展名爲php.ini文件,擴展名爲xslcache.so。如果你的php.ini文件中有這樣的行,請檢查你的錯誤日誌,看看PHP是否無法加載擴展。

+0

我沒有將它添加到php.ini文件中,我會在哪裏找到與此相關的錯誤日誌? – James 2009-06-07 17:36:31

+0

假設Linux,並且您正在從Apache運行腳本,請檢查您的apache error.log。如果您有shell訪問權限,請嘗試直接運行php。 – 2009-06-09 04:09:51

-1

拋出一個猜測在這裏,但大小寫問題? API文檔將該類稱爲XSLTCache(),但是在nytimes上的封面頁和您的代碼稱爲xsltCache();我無法從我讀過的或我在Google上可以找到的內容中知道PHP類名是否區分大小寫。

0

它是一個資本化發行,但並不完全是什麼SpliFF提示:

如果你看一下this test include file在紐約時報網站,資本應該是:

$proc = new xsltcache; 
0

難道上是一個權限問題/usr/lib/libexslt.so文件?也許PHP無法訪問它?