「ダウンロード商品ファイル名」…
WinCacheについて調べてみた。
EC CUBE3をXAMPPにインストールするときに警告が出たのでWinCacheについて調べてみた。
http://pecl.php.net/package/wincache
こんなものらしいです。 でも英語で何が書いてあるかわかりませんね。
日本語のマニュアルを読んでみると http://php.net/manual/ja/wincache.installation.php
もともとはバンドルされていないようなものなんですね。 追加で実装するモジュールのようです。
では何に使うのか? の前にそもそもPECLが何かわかっていないので調べてみることに
http://php.net/manual/ja/install.pecl.php » PECL は PHP 拡張モジュールのリポジトリで、 » PEAR パッケージシステムを経由して使用可能です。 とある。
やったね!全部無料っぽいよ! PECL拡張モジュールを使うことによってPHPに拡張機能を持たせることができるみたいです。
“また、 » pear コマンド についても理解していることとします。 “
うえぇ・・・理解してないです。全然。 http://pear.php.net/manual/en/guide.users.commandline.cli.php いやいや・・・いやいや。理解しなきゃダメなんですかねこれは そんなわけで http://www.phpbook.jp/pear/ このサイトさんを参考にしてみました。
PEARのパッケージマネージャーをインストールするみたいなのでさっそく実行
C:\xampp\php>go-pear.bat
ええ・・・こういう事じゃないの・・
と思ったらXAMPPには元々入ってたわテヘッ 早速マニュアルをダウンロード http://pear.php.net/manual/ “Many HTML files"のzipファイルをダウンロードしてみた。
何も入ってなくてワロタ
仕方なく"pear_manual_en.tar"の方をダウンロードしてみたら中身が入ってました。
あっ・・ていうか2016年5月現在日本語マニュアルはリンク切れしてるのね。 仕方ない諦めよう。
PEARコマンドがどうかって話になりそうだけどWinCacheと関係なくなってきそうなので 本題に戻る。
PEARが入っていることが確認できたので もう使えるようになってるのかな http://pecl.php.net/package/wincache
-
どこか一時的な場所にパッケージを展開します。
-
php_wincache.dll を PHP の拡張モジュール用フォルダにコピーします。 このフォルダは、通常は PHP のバイナリファイルがあるフォルダと同じ場所にあって “ext" という名前です。たとえば C:\Program Files\PHP\ext のようになります。
-
php.ini ファイルをテキストエディタで開きます。通常は PHP のバイナリファイルと同じ場所にあります。 たとえばC:\Program Files\PHP\php.ini のようになります。
-
php.ini ファイルの最後に extension = php_wincache.dll という行を追加します。
-
php.ini ファイルを保存して終了します。
-
IIS Application Pools for PHP をリサイクルして設定の変更を適用します。 この拡張モジュールが有効になったことを確かめるには、 phpinfo 関数をコールする PHP のコードを書いた phpinfo.php というファイルをつくります。
-
PHP を使う IIS ウェブサイトのルートフォルダに phpinfo.php を保存し、 http://localhost/phpinfo.php を開きます。そして、表示されたウェブページから wincache というセクションを探します。 拡張モジュールが有効になっていれば、phpinfo の出力に WinCache の設定項目が含まれるはずです。
ってな感じらしいですが
“この拡張モジュールには二種類のパッケージがあります。PHP 5.2.X 用と PHP 5.3.X 用です。使っている PHP のバージョンにあわせて適切なほうを選びましょう。"
え・・? うちのXAMPPさんはPHP Version 5.6.15で動かしているのでどうしようか。 最新版入れておくか。
まあ・・1.3.7.10と2.0.0.6を両方ダウンロードしてみます。
2.0.0.6から使ってみるか。 んじゃまあ早速php_wincache.dllをC:\xampp\php\extあたりに入れてみますか。
解凍したけど・・・・php_wincache.dll無いんだけど ああ!!! Windowsだからこっちか!!
http://pecl.php.net/package/WinCache/1.3.6.1/windows
完全にリンク見逃してたわ。
スレッドセーフってなんやねん・・・ http://php.net/manual/ja/faq.obtaining.php#faq.obtaining.threadsafety
“PHP をダウンロードするときの「スレッドセーフ」の意味は?
スレッドセーフである、というのは、Windows 上の Apache 2 のような マルチスレッドのウェブサーバーでも動作するバイナリだという意味です。 スレッドごとにローカルストレージのコピーを作成し、 別のスレッドとデータの衝突を起こさないようにしています。
それで、結局どっちを選べばいいのかですって? もし PHP を CGI として動かすつもりなら、スレッドセーフでなくてもかまいません。 リクエストのたびにバイナリが起動するからです。IIS5 や IIS6 といったマルチスレッドのウェブサーバーで動かす場合は、 スレッドセーフ版の PHP を選ばなければなりません。"
ってことなのでスレッドセーフ・・・ってことでいいのかな。ちょっと読んでもよくわかりません。 やっとのことでphp_wincache.dllが手に入ったのでさっそく入れてみました。
そして次は設定。php.iniの最終行に
extension = php_wincache.dll
と追加しておきました。
だがしかし有効にならない・・・
extension_dir="C:\xampp\php\ext"
こちらのパスも合ってるしdllも入れたし。やっぱりPHPのバージョンかな。
※未解決
ディスカッション
コメント一覧
私もこれ気になったんですがIIS専用のようです。
http://php.net/manual/ja/wincache.requirements.php
IIS専用だったんですね!では気にしなくてもいいかもしれないですね!