Amazon CloudFrontキャッシング用にWordPressを設定しますか?
-
-
これを行うための最良の解決策であることがわかっている限り、http://wordpress.org/extend/plugins/w3-total-cache/で答えるつもりでした.あなたが必要とするものに欠けているものは何ですか?I was going to answer with http://wordpress.org/extend/plugins/w3-total-cache/ , as far as I know it's the best solution for doing this. What does it lack that you need?
- 2
- 2010-08-12
- artlung
-
ええ、W3 Total Cacheがあなたのニーズを満たしていないのはどうですか?Yeah, what about W3 Total Cache doesn't meet your needs?
- 1
- 2010-08-12
- MikeSchinkel
-
それは私が答えを知らないということではありませんでした-それはすべての人類のために答えを文書化することについてです.;-)It wasn't really about me not knowing the answer - it's about documenting the answer for all of humanity. ;-)
- 0
- 2010-08-18
- Brent Ozar
-
2 回答
- 投票
-
-
- 2010-08-19
プラグインは正常に機能します.別の方法として、独自の関数を使用してbloginf()をCDN-Urlに置き換えることができます.例:
コンテンツのURLを置き換えます:
// replace content for CDN if ( !function_exists('fb_add_static_content_url') ) { function fb_add_static_content_url($content) { if ( is_admin() ) // eigentlich überflüssig return $content; $wpurl = get_bloginfo('wpurl'); $search = array( $wpurl . '/wp-content/images/', $wpurl . '/wp-content/download/', ); $replace = array( 'http://cdn1.bueltge.de/', 'http://cdn2.bueltge.de/', ); return str_replace( $search, $replace, $content ); } add_filter( 'the_content', 'fb_add_static_content_url' ); }
stylesheet_directoyなどを置き換えます:
// replace for CDN if ( !function_exists('fb_add_static_wpurl') ) { function fb_add_static_wpurl($info, $show) { if ( is_admin() ) return $info; $keys = array( 'url', 'wpurl', 'stylesheet_url', 'stylesheet_directory', 'template_url', 'template_directory', ); if ( in_array( $show, $keys ) ) { $wpurl = get_bloginfo('wpurl'); $search = array( $wpurl . '/wp-content/images/', $wpurl . '/wp-content/download/', $wpurl . '/wp-content/themes/', $wpurl . '/wp-content/plugins/', ); $replace = array( 'http://cdn1.bueltge.de/', 'http://cdn2.bueltge.de/', 'http://cdn3.bueltge.de/', 'http://cdn3.bueltge.de/', ); return str_replace( $search, $replace, $info ); } else { return $info; } } add_filter( 'bloginfo_url', 'fb_add_static_wpurl', 9999, 2 ); }
template_directoryおよびその他を置き換えます:
function fb_add_static_stylesheet_uri($uri) { if ( is_admin() ) return $uri; $wpurl = get_bloginfo('wpurl'); $search = array( $wpurl . '/wp-content/images/', $wpurl . '/wp-content/download/', $wpurl . '/wp-content/themes/', $wpurl . '/wp-content/plugins/', ); $replace = array( 'http://cdn1.bueltge.de/', 'http://cdn2.bueltge.de/', 'http://cdn3.bueltge.de/', 'http://cdn3.bueltge.de/', ); return str_replace( $search, $replace, $uri ); } add_filter ( 'template_directory_uri', 'fb_add_static_stylesheet_uri' ); add_filter ( 'stylesheet_uri', 'fb_add_static_stylesheet_uri' ); add_filter ( 'stylesheet_directory_uri', 'fb_add_static_stylesheet_uri' );
The plugin works fine; alternative you can use a own function to replace the bloginf() to your CDN-Url; Example:
replace the url in content:
// replace content for CDN if ( !function_exists('fb_add_static_content_url') ) { function fb_add_static_content_url($content) { if ( is_admin() ) // eigentlich überflüssig return $content; $wpurl = get_bloginfo('wpurl'); $search = array( $wpurl . '/wp-content/images/', $wpurl . '/wp-content/download/', ); $replace = array( 'http://cdn1.bueltge.de/', 'http://cdn2.bueltge.de/', ); return str_replace( $search, $replace, $content ); } add_filter( 'the_content', 'fb_add_static_content_url' ); }
replace stylesheet_directoy and others:
// replace for CDN if ( !function_exists('fb_add_static_wpurl') ) { function fb_add_static_wpurl($info, $show) { if ( is_admin() ) return $info; $keys = array( 'url', 'wpurl', 'stylesheet_url', 'stylesheet_directory', 'template_url', 'template_directory', ); if ( in_array( $show, $keys ) ) { $wpurl = get_bloginfo('wpurl'); $search = array( $wpurl . '/wp-content/images/', $wpurl . '/wp-content/download/', $wpurl . '/wp-content/themes/', $wpurl . '/wp-content/plugins/', ); $replace = array( 'http://cdn1.bueltge.de/', 'http://cdn2.bueltge.de/', 'http://cdn3.bueltge.de/', 'http://cdn3.bueltge.de/', ); return str_replace( $search, $replace, $info ); } else { return $info; } } add_filter( 'bloginfo_url', 'fb_add_static_wpurl', 9999, 2 ); }
replace the template_directory and other:
function fb_add_static_stylesheet_uri($uri) { if ( is_admin() ) return $uri; $wpurl = get_bloginfo('wpurl'); $search = array( $wpurl . '/wp-content/images/', $wpurl . '/wp-content/download/', $wpurl . '/wp-content/themes/', $wpurl . '/wp-content/plugins/', ); $replace = array( 'http://cdn1.bueltge.de/', 'http://cdn2.bueltge.de/', 'http://cdn3.bueltge.de/', 'http://cdn3.bueltge.de/', ); return str_replace( $search, $replace, $uri ); } add_filter ( 'template_directory_uri', 'fb_add_static_stylesheet_uri' ); add_filter ( 'stylesheet_uri', 'fb_add_static_stylesheet_uri' ); add_filter ( 'stylesheet_directory_uri', 'fb_add_static_stylesheet_uri' );
Amazon CloudFront は、大量のデータを生き残るのに役立つコンテンツ配信ネットワーク(CDN)です.短時間でロードします.S3/CloudFrontでファイル(メディアライブラリ、CSS、プラグインファイル、テーマ)をホストするようにWordPressを設定する最も簡単な方法は何ですか?
(現在、これを行うためにW3 Total Cacheを使用しています.)