晋太元中,武陵人捕鱼为业。缘溪行,忘路之远近。忽逢桃花林,夹岸数百步,中无杂树,芳草鲜美,落英缤纷。渔人甚异之,复前行,欲穷其林。 林尽水源,便得一山,山有小口,仿佛若有光。便舍船,从口入。初极狭,才通人。复行数十步,豁然开朗。土地平旷,屋舍俨然,有良田、美池、桑竹之属。阡陌交通,鸡犬相闻。其中往来种作,男女衣着,悉如外人。黄发垂髫,并怡然自乐。 见渔人,乃大惊,问所从来。具答之。便要还家,设酒杀鸡作食。村中闻有此人,咸来问讯。自云先世避秦时乱,率妻子邑人来此绝境,不复出焉,遂与外人间隔。问今是何世,乃不知有汉,无论魏晋。此人一一为具言所闻,皆叹惋。余人各复延至其家,皆出酒食。停数日,辞去。此中人语云:“不足为外人道也。”(间隔 一作:隔绝) 既出,得其船,便扶向路,处处志之。及郡下,诣太守,说如此。太守即遣人随其往,寻向所志,遂迷,不复得路。 南阳刘子骥,高尚士也,闻之,欣然规往。未果,寻病终。后遂无问津者。
|
Server : Apache System : Linux srv.rainic.com 4.18.0-553.47.1.el8_10.x86_64 #1 SMP Wed Apr 2 05:45:37 EDT 2025 x86_64 User : rainic ( 1014) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/stando/www/wp-content/plugins/w3-total-cache/ |
Upload File : |
<?php
namespace W3TC;
class Cdn_Plugin_Admin {
function run() {
$config_labels = new Cdn_ConfigLabels();
add_filter( 'w3tc_config_labels', array( $config_labels, 'config_labels' ) );
$c = Dispatcher::config();
$cdn_engine = $c->get_string( 'cdn.engine' );
if ( $c->get_boolean( 'cdn.enabled' ) ) {
$admin_notes = new Cdn_AdminNotes();
add_filter( 'w3tc_notes', array( $admin_notes, 'w3tc_notes' ) );
add_filter( 'w3tc_errors', array( $admin_notes, 'w3tc_errors' ) );
if ( $c->get_boolean( 'cdn.admin.media_library' ) &&
$c->get_boolean( 'cdn.uploads.enable' ) ) {
add_filter( 'wp_get_attachment_url',
array( $this, 'wp_get_attachment_url' ), 0 );
add_filter( 'attachment_link',
array( $this, 'wp_get_attachment_url' ), 0 );
}
}
// attach to actions without firing class loading at all without need
if ( $cdn_engine == 'google_drive' ) {
add_action( 'admin_print_scripts-performance_page_w3tc_cdn', array(
'\W3TC\Cdn_GoogleDrive_Page',
'admin_print_scripts_w3tc_cdn' ) );
add_action( 'w3tc_settings_cdn_boxarea_configuration', array(
'\W3TC\Cdn_GoogleDrive_Page',
'w3tc_settings_cdn_boxarea_configuration'
) );
} elseif ( $cdn_engine == 'highwinds' ) {
add_action( 'admin_print_scripts-performance_page_w3tc_cdn', array(
'\W3TC\Cdn_Highwinds_Page',
'admin_print_scripts_w3tc_cdn' ) );
add_action( 'w3tc_ajax', array(
'\W3TC\Cdn_Highwinds_Popup',
'w3tc_ajax' ) );
add_action( 'admin_init_w3tc_dashboard', array(
'\W3TC\Cdn_Highwinds_Widget',
'admin_init_w3tc_dashboard' ) );
add_action( 'w3tc_ajax_cdn_highwinds_widgetdata', array(
'\W3TC\Cdn_Highwinds_Widget',
'w3tc_ajax_cdn_highwinds_widgetdata' ) );
add_action( 'w3tc_settings_cdn_boxarea_configuration', array(
'\W3TC\Cdn_Highwinds_Page',
'w3tc_settings_cdn_boxarea_configuration' ) );
} elseif ( $cdn_engine == 'limelight' ) {
add_action( 'admin_print_scripts-performance_page_w3tc_cdn', array(
'\W3TC\Cdn_LimeLight_Page',
'admin_print_scripts_w3tc_cdn' ) );
add_action( 'w3tc_ajax', array(
'\W3TC\Cdn_LimeLight_Popup',
'w3tc_ajax' ) );
add_action( 'w3tc_settings_cdn_boxarea_configuration', array(
'\W3TC\Cdn_LimeLight_Page',
'w3tc_settings_cdn_boxarea_configuration'
) );
} elseif ( $cdn_engine == 'maxcdn' ) {
add_action( 'admin_print_scripts-performance_page_w3tc_cdn', array(
'\W3TC\Cdn_MaxCdn_Page',
'admin_print_scripts_w3tc_cdn' ) );
add_action( 'w3tc_ajax', array(
'\W3TC\Cdn_MaxCdn_Popup',
'w3tc_ajax' ) );
add_action( 'w3tc_settings_cdn_boxarea_configuration', array(
'\W3TC\Cdn_MaxCdn_Page',
'w3tc_settings_cdn_boxarea_configuration'
) );
} elseif ( $cdn_engine == 'rackspace_cdn' ) {
add_filter( 'w3tc_admin_actions', array(
'\W3TC\Cdn_RackSpaceCdn_Page',
'w3tc_admin_actions' ) );
add_action( 'admin_print_scripts-performance_page_w3tc_cdn', array(
'\W3TC\Cdn_RackSpaceCdn_Page',
'admin_print_scripts_w3tc_cdn' ) );
add_action( 'w3tc_ajax', array(
'\W3TC\Cdn_RackSpaceCdn_Popup',
'w3tc_ajax' ) );
add_action( 'w3tc_settings_cdn_boxarea_configuration', array(
'\W3TC\Cdn_RackSpaceCdn_Page',
'w3tc_settings_cdn_boxarea_configuration' ) );
} elseif ( $cdn_engine == 'rscf' ) {
add_action( 'admin_print_scripts-performance_page_w3tc_cdn', array(
'\W3TC\Cdn_RackSpaceCloudFiles_Page',
'admin_print_scripts_w3tc_cdn' ) );
add_action( 'w3tc_ajax', array(
'\W3TC\Cdn_RackSpaceCloudFiles_Popup',
'w3tc_ajax' ) );
add_action( 'w3tc_settings_cdn_boxarea_configuration', array(
'\W3TC\Cdn_RackSpaceCloudFiles_Page',
'w3tc_settings_cdn_boxarea_configuration' ) );
} elseif ( $cdn_engine == 'stackpath' ) {
add_action( 'admin_print_scripts-performance_page_w3tc_cdn', array(
'\W3TC\Cdn_StackPath_Page',
'admin_print_scripts_w3tc_cdn' ) );
add_action( 'w3tc_ajax', array(
'\W3TC\Cdn_StackPath_Popup',
'w3tc_ajax' ) );
add_action( 'w3tc_settings_cdn_boxarea_configuration', array(
'\W3TC\Cdn_StackPath_Page',
'w3tc_settings_cdn_boxarea_configuration'
) );
add_action( 'admin_init_w3tc_dashboard', array(
'\W3TC\Cdn_StackPath_Widget',
'admin_init_w3tc_dashboard' ) );
add_action( 'w3tc_ajax_cdn_stackpath_widgetdata', array(
'\W3TC\Cdn_StackPath_Widget',
'w3tc_ajax_cdn_stackpath_widgetdata' ) );
} elseif ( $cdn_engine == 'stackpath2' ) {
add_action( 'admin_print_scripts-performance_page_w3tc_cdn', array(
'\W3TC\Cdn_StackPath2_Page',
'admin_print_scripts_w3tc_cdn' ) );
add_action( 'w3tc_ajax', array(
'\W3TC\Cdn_StackPath2_Popup',
'w3tc_ajax' ) );
add_action( 'w3tc_settings_cdn_boxarea_configuration', array(
'\W3TC\Cdn_StackPath2_Page',
'w3tc_settings_cdn_boxarea_configuration'
) );
add_action( 'admin_init_w3tc_dashboard', array(
'\W3TC\Cdn_StackPath2_Widget',
'admin_init_w3tc_dashboard' ) );
add_action( 'w3tc_ajax_cdn_stackpath2_widgetdata', array(
'\W3TC\Cdn_StackPath2_Widget',
'w3tc_ajax_cdn_stackpath2_widgetdata' ) );
} else {
// default cdn widget
add_action( 'admin_init_w3tc_dashboard', array(
'\W3TC\Cdn_StackPath2_Widget',
'admin_init_w3tc_dashboard' ) );
add_action( 'w3tc_ajax_cdn_stackpath2_widgetdata', array(
'\W3TC\Cdn_StackPath2_Widget',
'w3tc_ajax_cdn_stackpath2_widgetdata' ) );
}
add_action( 'w3tc_settings_general_boxarea_cdn', array(
$this,
'w3tc_settings_general_boxarea_cdn'
) );
}
public function w3tc_settings_general_boxarea_cdn() {
$config = Dispatcher::config();
$engine_optgroups = array();
$engine_values = array();
$optgroup_pull = count( $engine_optgroups );
$engine_optgroups[] = __( 'Origin Pull / Mirror:', 'w3-total-cache' );
$optgroup_push = count( $engine_optgroups );
$engine_optgroups[] = __( 'Origin Push:', 'w3-total-cache' );
$engine_values['akamai'] = array(
'label' => __( 'Akamai', 'w3-total-cache' ),
'optgroup' => $optgroup_pull
);
$engine_values['cf2'] = array(
'label' => __( 'Amazon CloudFront', 'w3-total-cache' ),
'disabled' => ( !Util_Installed::curl() ? true : null ),
'optgroup' => $optgroup_pull
);
$engine_values['att'] = array(
'label' => __( 'AT&T', 'w3-total-cache' ),
'optgroup' => $optgroup_pull
);
$engine_values['cotendo'] = array(
'label' => __( 'Cotendo (Akamai)', 'w3-total-cache' ),
'optgroup' => $optgroup_pull
);
$engine_values['mirror'] = array(
'label' => __( 'Generic Mirror', 'w3-total-cache' ),
'optgroup' => $optgroup_pull
);
$engine_values['highwinds'] = array(
'label' => __( 'Highwinds', 'w3-total-cache' ),
'optgroup' => $optgroup_pull
);
$engine_values['limelight'] = array(
'label' => __( 'LimeLight', 'w3-total-cache' ),
'optgroup' => $optgroup_pull
);
$engine_values['maxcdn'] = array(
'label' => __( 'MaxCDN', 'w3-total-cache' ),
'optgroup' => $optgroup_pull
);
$engine_values['rackspace_cdn'] = array(
'label' => __( 'RackSpace CDN', 'w3-total-cache' ),
'optgroup' => $optgroup_pull
);
$engine_values['stackpath2'] = array(
'label' => __( 'StackPath (recommended)', 'w3-total-cache' ),
'optgroup' => $optgroup_pull
);
$engine_values['stackpath'] = array(
'label' => __( 'StackPath SecureCDN (Legacy)', 'w3-total-cache' ),
'optgroup' => $optgroup_pull
);
$engine_values['edgecast'] = array(
'label' => __( 'Verizon Digital Media Services (EdgeCast) / Media Temple ProCDN', 'w3-total-cache' ),
'optgroup' => $optgroup_pull
);
$engine_values['cf'] = array(
'disabled' => ( !Util_Installed::curl() ? true : null ),
'label' => __( 'Amazon CloudFront Over S3', 'w3-total-cache' ),
'optgroup' => $optgroup_push
);
$engine_values['s3'] = array(
'disabled' => ( !Util_Installed::curl() ? true : null ),
'label' => __( 'Amazon Simple Storage Service (S3)', 'w3-total-cache' ),
'optgroup' => $optgroup_push
);
$engine_values['s3_compatible'] = array(
'disabled' => ( !Util_Installed::curl() ? true : null ),
'label' => __( 'Amazon Simple Storage Service (S3) Compatible', 'w3-total-cache' ),
'optgroup' => $optgroup_push
);
$engine_values['google_drive'] = array(
'label' => __( 'Google Drive', 'w3-total-cache' ),
'optgroup' => $optgroup_push
);
$engine_values['azure'] = array(
'label' => __( 'Microsoft Azure Storage', 'w3-total-cache' ),
'optgroup' => $optgroup_push
);
$engine_values['rscf'] = array(
'disabled' => ( !Util_Installed::curl() ? true : null ),
'label' => __( 'Rackspace Cloud Files', 'w3-total-cache' ),
'optgroup' => $optgroup_push
);
$engine_values['ftp'] = array(
'disabled' => ( !Util_Installed::ftp() ? true : null ),
'label' => __( 'Self-hosted / File Transfer Protocol Upload', 'w3-total-cache' ),
'optgroup' => $optgroup_push
);
$cdn_enabled = $config->get_boolean( 'cdn.enabled' );
$cdn_engine = $config->get_string( 'cdn.engine' );
include W3TC_DIR . '/Cdn_GeneralPage_View.php';
}
/**
* Adjusts attachment urls to cdn. This is for those who rely on
* wp_get_attachment_url()
*
* @param string $url the local url to modify
* @return string
*/
function wp_get_attachment_url( $url ) {
if ( defined( 'WP_ADMIN' ) ) {
$url = trim( $url );
if ( !empty( $url ) ) {
$parsed = parse_url( $url );
$uri = ( isset( $parsed['path'] ) ? $parsed['path'] : '/' ) .
( isset( $parsed['query'] ) ? '?' . $parsed['query'] : '' );
$wp_upload_dir = wp_upload_dir();
$upload_base_url = $wp_upload_dir['baseurl'];
if ( substr($url, 0, strlen( $upload_base_url ) ) == $upload_base_url ) {
$common = Dispatcher::component( 'Cdn_Core' );
$new_url = $common->url_to_cdn_url( $url, $uri );
if ( !is_null( $new_url ) ) {
$url = $new_url;
}
}
}
}
return $url;
}
}