静的HTML化によるキャッシュ・再構築機能を開発しました
-
WordPressではwp-cacheやwp-super-cacheなどがありますが、
アクセスが無いとキャッシュが生成されないと思います。
アクセスが無い私のサイトはキャッシュが生成されずとても寂しかったので、
もっとアグレッシブにキャッシュを生成するプラグインを開発しました。説明は
http://pc.freeblo.com/370.html
にあります。ぜひ皆さんに叩いて頂ければ幸いです。
-
masaruさん
> これは管理画面>投稿>キャッシュ再構築を選び、表示されるページの
> キャッシュの削除をクリックしてから実行していますでしょうか?
・・・
一番最初に同じことを実行してみましたがダメでした。リンク先のコメントで,
> どうやらcache直下に出来たフォルダ達の所有者情報apacheの問題だったことがわかり、
> coreserverの管理画面で自分に修正して無事動くようになりました。
というのがあるのですが,所有者情報(Cacheディレクトリ以下)が自分からapacheに変わっていたのを確認しましたので,ここが原因ではないかと思ってます。コメントした方が実行した「管理画面で自分に修正して」というのが私にはわからないので,管理者に削除をお願いする方向になるかと思います。fixdotさん
ご連絡有り難うございます!そして、masaruさん。フォロー有り難うございます!
恐らくfixdotさんのご推察の動きになってしまうかと思いますが、CORESERVERを触った事が無いのでフォロー出来ず大変申し訳ございません!
とはいえ自分の業務としてのノウハウに繋がる気がするのですが、
http://www.stupid-net.com/text/wordpress-text/927
というように、こちらはwp-super-cacheのお話ですが、CORESERVERは所有者権限を特に気をつける必要がありそうですね。所有者がapacheなのであれば、同じapacheから削除しにいけば、基本的にはcacheディレクトリ以下は全て削除可能なはずなのですが、
ディレクトリの削除のみ、私の知識では知り得ないもう何個かの必要な条件があるのかもしれませんね・・・
そういえば、なのですが、こんな情報は役に立ちますでしょうか。0.3未満、PHPセーフモードでかなり悩んだ記憶があります。
というのも、権限が777だとPHPセーフモードでは、「おかしいだろその弱すぎな権限は。」みたいな事で、削除が出来ないのです。
これを755に変えるとあっさり削除出来たり。
さらに、先頭のディレクトリに問題があると、その下のものはダメだったり。
ただしfixdotさんのお話だと、ファイル自体は削除出来ているようですので、あれ?自分の時と違うな。という状況なのですが・・・
試しにcacheディレクトリを755あるいは705にして、
『キャッシュを削除』
を押してみるといかがでしょうか。それともう一点、このお話と関係無いのですが、0.8に上がりましたw
サイドバーが再構築可能になりました。masaruさんご指摘のインストール方法には、今回の件を明記しておきますね!
よろしくお願いします。ディレクトリが削除出来ない件でもう1投稿。
#段々投稿数が他の件名に比べても異様に数が多くなってきていて、
#投稿が後ろめたくなってきましたがw何かそれっぽい記事、ネットに無いかな?と検索していたら、
自分のブログがヒットしましたww
すっかり忘れてましたが書き残してましたね。PHP セーフモード rmdir 権限
とGoogle検索で
http://pc.freeblo.com/345.html
こんなのが出てきました。Cacheディレクトリ削除できました。
europa3さん,masaruさん,いろいろありがとうございました。他の方がCORESERVER利用で同じようなトラブルにあっても解決できるよう,ここにメモしておきます。
1. CORESERVERの管理画面にログイン後,ファイルマネージャーからサーバへログインしてWordPressのpluginsディレクトリ内にあるmake-cache>Cache下にあるディレクトリの所有者を確認します。hpusersではなくapacheになっていれば,そのディレクトリはWordPressのコントロールパネルやFTPソフトからmake-cacheを正常にアンインストール(Cacheディレクトリ削除)することができません。
2. 所有者をapacheからhpusersへ変更するため一度CORESERVERの管理画面に戻り,ツールから「ファイル所有者の修正」を実行します。(数分後に実行されるメッセージが表示されます)
3. 数分経過したら,FTPアプリやファイルマネージャー等でCacheディレクトリを削除します。(心配であれば,一度ファイルマネージャーで所有者がhpusersであることを確認してから削除を実行)
これで心置きなくmake-cacheが使えます。
fixdotさん
直って本当に良かったです!
この記事の件、とても有り難い情報ですので、私のブログからリンクさせて頂きました。
これからもどうぞよろしくお願いします。自分もcoreserverで同じ問題で(厳密にはfixdotさんより古いバージョンから)詰まったのですが、fixdotさんの手順でapacheから変更して削除可能になっているので、おそらく大丈夫だと思います。自分が解決までに歩んだ道のりを書いておきます。
FFFTPでの削除 http://www.hereticanthem.com/webtips/215/ の手順では無理。
記事は古く、xreaバージョンですが、http://sb.xrea.com/showthread.php?t=437 この手順でも無理でした。ただ、okという画面が出ていたので、一応削除行為は行っていたと思います。しかし、削除できなかったと推測されます。
ただ、この時点で、サポートに削除依頼を出すことができるという事を聞いて安心しました。「最悪、削除依頼出せばいいんだ」って。
で、super-cacheは動かしてみようかと思って、やってみたら動かず。で、super-cacheのログはあるだろうと、探してたらhttp://www.stupid-net.com/text/wordpress-text/927 に辿り着いて、coreserverの所有者情報の件につながったわけで、解決となりました。
で裏付け取りで、もすこし探したら、http://bizcaz.com/archives/coreserver/
> PHP にて自動作成されたディレクトリの所有者は「apache」となってしまうようです。ディレクトリの所有者が「apache」だと自分では削除や移動などができません。所有権を戻してもらうには、CORESERVER の管理メニューから「ツール」>「ファイル所有者の修正」という項目がありますので、そちらで申請することで自分の所有権に戻すことができます。
とありました。たぶん、これが原因と見て間違いないでしょう。
huuraiさん
詳細なリカバリ情報、有り難うございます!
make-cacheの動きとしては、基本的にはwp-content/uploadsに蓄積されていく画像と変わらないお話なのですが、
CORESERVERはuploadsに生成されたディレクトリや画像はFTPで削除出来るのですかね・・・?何にせよ、この問題が他のサーバで起きたとしても、
今回と同様の事例という事でトラブルシューティングが出来そうです。有り難うございました。こんにちは。
別のスレッドでアドバイスをいただいたpecoです。このプラグインについてですが、
例えば、トップページにランダムに記事を表示している場合は、
どのようになるのでしょうか?pecoさん、こんにちは。
トップページのランダム表示記事に関してですが、こちらは残念ながら静的HTMLになってしまうので、
そのままではランダムにならずに同じものになってしまいます。ランダム記事部分はJavaScriptで常に動的出力すればOK。みたいな事もありますが、
他スレッドでのお話を拝見している限りでは、SEO等も重視される気がしておりますので、
JavaScriptからの出力はNGかな?と感じております。
(HTMLコードの出力ではないため、検索エンジンとしてはスルーしてしまうと思います)とはいえ方法が無いわけではなく、一定時間ごとにランダムにする方法はあり、
具体的にはwp-cronを利用して、定期的にトップページを再構築すればいいと考えております。
というわけで、wp-cronからの定期更新も、時間を見つけて取り組んでみたいと思いますw
ネタを頂き有り難うございます!wordpress コメントスパム対策(Nonce! Please,WP-HashCash)
コメント,トラックバックにユニーク値を付加しspam投稿を排除するため、現在のユニーク値を表示(非キャッシュ)必要ある、出来ますかあとキャッシュに有効期限(頻繁にアクセスされるのは数ヶ月で6ヶ月もすれば1hitするかになる)出来ますか、以下の手動で代用がいいかも
キャッシュ作成を2week、4week、8week、16week、all make(<-現在はこれだけ)とあれば運用は1ヶ月ごとにキャッシュ破棄、2weekで最小限のキャッシュ構成が考えられる(自動再構築で投稿、コメントで作成)[1ヶ月後は6weekキャッシュ]
ログイン中に表示はキャッシュ生成(8ヶ月前など頻繁に閲覧の投稿救済)もあると便利かな?キャッシュ作成を2week、4week、8week、16week、all make
閲覧手動は忘れることもあるのでカンマ指定で出力確認はどうだろう
1-2,6,8-9,36-40__確認__作成<--確認押すと以下表示(50*10行OVERはスライダ)、作成でキャッシュ作成
オリンピック終わり(10-3-2),メダルは(10-2-16)
書初め(10-1-19),雪は(10-1-26)
帰省(09-12-29),高速は(10-1-5)
36週前-40週前three-eyeさん
コメント有り難うございます。実は今のところの実装では、各ページごとに動的な出力が必要なものに関しては、残念ながら対応しておりません。
またこの部分は非常に難易度が高い部分でして、今のところサッパリ思いつかず。閃きを待っている状態です。また有効期限設定をして自動で再構築する件なのですが、
これは実装予定はありません。たぶんwp-super-cacheの方が素晴らしい動きを見せるでしょうし、
こちらのmake-cacheプラグインは、何らかのアクションがあった時点で必ず再構築が行われ、
それは時間による自動ではなく、人間のアクションによる再構築。を目指しています。
例えば、コメントがきたらすぐに再構築。トラックバックがきたらすぐに再構築。記事が投稿されたら再構築。編集されたり削除されても再構築。といった具合です。現在時点ではこの方向に重点を置いているため、これが完璧になれば、そもそも2週間ごとに再構築。という事は必要なくなると思っています。
2つ目のお話の方は、何だかすごく面白そうな予感がする言い回しをされておりますが、完璧には意味を解釈する事が難しかったので、コメントは控えさせてください。すみません。
あっという間にオリンピック終わっちゃいましたね。
- トピック「静的HTML化によるキャッシュ・再構築機能を開発しました」には新たに返信することはできません。