it-swarm.dev

Konfigurace aplikace WordPress pro službu Amazon CloudFront Caching?

Amazon CloudFront je síť pro distribuci obsahu (CDN), která vám pomůže přežít obrovské množství zátěže v krátkém čase. Jaký je nejjednodušší způsob, jak konfigurovat WordPress pro hostování svých souborů (mediální knihovna, CSS, soubory pluginů, téma) na S3/CloudFront?

(V současné době používám W3 Total Cache k tomu.)

6
Brent Ozar

Plugin funguje dobře; alternativu můžete použít vlastní funkci nahradit bloginf () na vaše CDN-Url; Příklad:

nahradit adresu URL v obsahu:

// 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' );
}

nahradit stylesheet_directoy a další:

// 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 );
}

nahradit adresář template_directory a další:

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' );
3
bueltge

Myslím si, že W3 Total Cache Plugin vám může pomoci ..

3
User