2009-06-02 10 views
0

は、私は残念ながら最後のハードルで転倒していますNYTimesの(http://code.nytimes.com/projects/xslcacheXSLTキャッシュの問題

からこのPHPモジュールをインストールしようとしています。私はphp.iniに追加してインストールしましたが、PHPコードを実行しているときにこのエラーが発生しています。 NYTimesのウェブサイト

$xslt = new xsltCache; 

ことが起こるかもしれない理由を任意のアイデアによって記載されているように

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

私のPHPコードはありますか?

モジュールのスクリプトをインストールマイに

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

答えて

2

拡張子を正しいphp.iniファイルに追加したことを確認してください。

PHPディレクトリがある場合は、そのディレクトリに拡張子を追加したいディレクトリがサーバーディレクトリにある可能性があります。

I.E.私のPCで、修正する正しいphp.iniはapache \ bin \ php.iniです。

P.S.サーバーを再起動することを忘れないでください。

0

php.iniファイルにextension = xslcache.soという拡張子を読み込んでいないようです。 php.iniファイルにその行がある場合は、エラーログをチェックし、PHPが拡張機能のロードに問題がないかどうかを確認してください。

+0

私はそれをphp.iniファイルに追加した、これに関連するエラーログはどこにありますか? – James

+0

Linuxを想定し、Apacheからスクリプトを実行している場合は、Apacheのerror.logを確認してください。シェルにアクセスできる場合は、phpを直接実行してみてください。 –

-1

ここでは大文字小文字の違いを推測していますか? APIドキュメントはクラスをXSLTCache()として参照していますが、nytimesの表紙とコードではxsltCache()と書かれています。 PHPのクラス名が大文字と小文字を区別しているかどうか、私が読んだこと、あるいは私がGoogle上で見つけることができないことは分かりません。

0

それは大文字と小文字の問題ですが、示唆していない、非常にどのようなマリファナたばこ:あなたはNYTimesのサイトでthis test include fileを見れば

、総額は次のようになります。

$proc = new xsltcache; 
+0

しかし、php_xsl.cを見ると、そのクラスを "XSLTCache"として宣言します。 –

+0

はい、コード内の名前については言及していませんが、それを含める方法については話しています。私が投稿したリンクは、出版社がそれをどのように含めるかの例です。 JamesはxsltCacheをxsltcacheに変更する必要があります。 :) –

+0

私はそれが問題ではないと言わなければならないでしょう、PHPは大文字小文字を区別しません。 – SeanJA

0

それが上の権限の問題だろう/usr/lib/libexslt.soファイル?たぶんphpにアクセスできませんか?