PATH:
home
/
shotlining
/
public_html
/
wp-content
/
plugins
/
w3-total-cache
<?php /** * File: UsageStatistics_Plugin.php * * @package W3TC */ namespace W3TC; /** * Class UsageStatistics_Source_AccessLog * * Access log reader - provides statistics data from http server access log * * phpcs:disable WordPress.PHP.NoSilencedErrors.Discouraged * phpcs:disable WordPress.WP.AlternativeFunctions */ class UsageStatistics_Source_AccessLog { /** * Regular expression for parsing access log lines. * * @var string */ private $line_regexp; /** * The last processed log line during the statistics collection. * * @var string */ private $max_line = ''; /** * The first processed log line during the statistics collection. * * @var string */ private $min_line = ''; /** * The maximum timestamp encountered during statistics collection. * * @var int */ private $max_time = 0; /** * The minimum timestamp encountered during statistics collection. * * @var int */ private $min_time; /** * Timestamp up to which the access log has been processed already. * Used to avoid re-processing already counted log entries. * * @var int */ private $max_already_counted_timestamp; /** * Timestamp up to which log entries have been processed in the current cycle. * * @var int|null */ private $max_now_counted_timestamp = null; /** * A flag indicating if more log data needs to be read from the access log file. * * @var bool */ private $more_log_needed = true; /** * The array where aggregated usage statistics are stored. * * @var array */ private $history; /** * The current position in the history array for processing log entries. * * @var int */ private $history_current_pos; /** * The current item in the history array representing a specific log entry's aggregated statistics. * * @var array */ private $history_current_item; /** * The timestamp marking the start of the current time period for the log entry in history. * * @var int */ private $history_current_timestamp_start; /** * The timestamp marking the end of the current time period for the log entry in history. * * @var int */ private $history_current_timestamp_end; /** * Processes the usage statistics from a history of access logs and adds relevant summary data. * * This method sums up dynamic and static request data and calculates average timings for each, * then integrates the statistics into a given summary array. It's essential for summarizing access log * statistics for the period represented by the history. * * @param array $summary The existing summary data, which will be updated with new information. * @param array $history The historical access log data to summarize. * * @return array The updated summary array with added statistics. */ public static function w3tc_usage_statistics_summary_from_history( $summary, $history ) { $dynamic_requests_total = Util_UsageStatistics::sum( $history, array( 'access_log', 'dynamic_count' ) ); $dynamic_timetaken_ms_total = Util_UsageStatistics::sum( $history, array( 'access_log', 'dynamic_timetaken_ms' ) ); $static_requests_total = Util_UsageStatistics::sum( $history, array( 'access_log', 'static_count' ) ); $static_timetaken_ms_total = Util_UsageStatistics::sum( $history, array( 'access_log', 'static_timetaken_ms' ) ); $summary['access_log'] = array( 'dynamic_requests_total_v' => $dynamic_requests_total, 'dynamic_requests_total' => Util_UsageStatistics::integer( $dynamic_requests_total ), 'dynamic_requests_per_second' => Util_UsageStatistics::value_per_period_seconds( $dynamic_requests_total, $summary ), 'dynamic_requests_timing' => Util_UsageStatistics::integer_divideby( $dynamic_timetaken_ms_total, $dynamic_requests_total ), 'static_requests_total' => Util_UsageStatistics::integer( $static_requests_total ), 'static_requests_per_second' => Util_UsageStatistics::value_per_period_seconds( $static_requests_total, $summary ), 'static_requests_timing' => Util_UsageStatistics::integer_divideby( $static_timetaken_ms_total, $static_requests_total ), ); return $summary; } /** * Initializes the access log handler with the provided data. * * This constructor sets up the necessary properties based on the provided data such as the log format, * webserver type, and log filename. It also generates a regular expression for parsing the log entries based * on the webserver type (Nginx or Apache). * * @param array $data Data array containing the log format, webserver type, and log filename. */ public function __construct( $data ) { $format = $data['format']; $webserver = $data['webserver']; $this->accesslog_filename = str_replace( '://', '/', $data['filename'] ); if ( 'nginx' === $webserver ) { $line_regexp = $this->logformat_to_regexp_nginx( $format ); } else { $line_regexp = $this->logformat_to_regexp_apache( $format ); } $this->line_regexp = apply_filters( 'w3tc_ustats_access_log_format_regexp', $line_regexp ); } /** * Processes the history of access logs and sets the relevant usage statistics. * * This method loads the access log file, reads from it to collect usage statistics, and updates the history * array with data. It ensures that only the relevant logs (those not already processed) are parsed. If the * log file cannot be opened, it logs an error and returns the history unchanged. * * phpcs:disable WordPress.PHP.DevelopmentFunctions.error_log_error_log * * @param array $history The existing history data that will be updated with parsed log statistics. * * @return array The updated history data. */ public function w3tc_usage_statistics_history_set( $history ) { $this->max_already_counted_timestamp = (int) get_site_option( 'w3tc_stats_history_access_log' ); if ( isset( $history[0]['timestamp_start'] ) && $history[0]['timestamp_start'] > $this->max_already_counted_timestamp ) { $this->max_already_counted_timestamp = $history[0]['timestamp_start'] - 1; } $this->history = $history; $this->min_time = time(); $this->setup_history_item( count( $history ) - 1 ); $h = @fopen( $this->accesslog_filename, 'rb' ); if ( ! $h ) { error_log( 'Failed to open access log for usage statisics collection' ); return $history; } fseek( $h, 0, SEEK_END ); $pos = ftell( $h ); $unparsed_head = ''; while ( $pos >= 0 && $this->more_log_needed ) { $pos -= 8192; if ( $pos <= 0 ) { $pos = 0; } fseek( $h, $pos ); $s = fread( $h, 8192 ); $unparsed_head = $this->parse_string( $s . $unparsed_head, $pos > 0 ); if ( $pos <= 0 ) { $this->more_log_needed = false; } } if ( defined( 'W3TC_DEBUG' ) && W3TC_DEBUG ) { Util_Debug::log( 'time', 'period ' . gmdate( DATE_ATOM, $this->max_already_counted_timestamp ) . ' - ' . gmdate( DATE_ATOM, $this->max_now_counted_timestamp ) . "\n" . 'min line: ' . $this->min_line . "\n" . 'max line: ' . $this->max_line ); } if ( ! is_null( $this->max_now_counted_timestamp ) ) { update_site_option( 'w3tc_stats_history_access_log', $this->max_now_counted_timestamp ); } return $this->history; } /** * Initializes a specific history item in the given position. * * This method sets up the access log item for the specific position within the history, initializing it with * default values if not already set. It's essential for tracking the access log statistics across multiple * history items. * * @param int $pos The position in the history array to set up. */ private function setup_history_item( $pos ) { $this->history_current_pos = $pos; if ( ! isset( $this->history[ $pos ]['access_log'] ) ) { $this->history[ $pos ]['access_log'] = array( 'dynamic_count' => 0, 'dynamic_timetaken_ms' => 0, 'static_count' => 0, 'static_timetaken_ms' => 0, ); } $this->history_current_item = &$this->history[ $pos ]['access_log']; $this->history_current_timestamp_start = $this->history[ $pos ]['timestamp_start']; $this->history_current_timestamp_end = $this->history[ $pos ]['timestamp_end']; } /** * Parses the given log string, processing its lines and collecting statistics. * * This method reads the log string, skips the first line if required, and processes each line to collect * data for usage statistics. It also handles the boundary checks for the collection period and logs * debugging information if needed. * * @param string $s The log string to parse. * @param bool $skip_first_line Whether to skip the first line when parsing. * * @return string Any unparsed head of the string. */ private function parse_string( $s, $skip_first_line ) { $s_length = strlen( $s ); $unparsed_head = ''; $lines = array(); $n = 0; if ( $skip_first_line ) { for ( ; $n < $s_length; $n++ ) { $c = substr( $s, $n, 1 ); if ( "\r" === $c || "\n" === $c ) { $unparsed_head = substr( $s, 0, $n + 1 ); break; } } } $line_start = $n; $line_elements = array(); $line_element_start = $n; for ( ; $n < $s_length; $n++ ) { $c = substr( $s, $n, 1 ); if ( "\r" === $c || "\n" === $c ) { if ( $n > $line_start ) { $lines[] = substr( $s, $line_start, $n - $line_start ); } $line_start = $n + 1; } } // last line comes first, boundary checks logic based on that. for ( $n = count( $lines ) - 1; $n >= 0; $n-- ) { $this->push_line( $lines[ $n ] ); } return $unparsed_head; } /** * Pushes a single line of log data into the history statistics. * * This method processes a single line from the access log, extracting relevant data (such as request time) * and categorizing the request as either dynamic or static. It updates the statistics for the current history item. * * @param string $line The line from the access log to process. */ private function push_line( $line ) { $e = array(); preg_match( $this->line_regexp, $line, $e ); $e = apply_filters( 'w3tc_ustats_access_log_line_elements', $e, $line ); if ( ! isset( $e['request_line'] ) || ! isset( $e['date'] ) ) { if ( defined( 'W3TC_DEBUG' ) && W3TC_DEBUG ) { Util_Debug::log( 'time', "line $line cant be parsed using regexp $this->line_regexp, request_line or date elements missing" ); } return; } $date_string = $e['date']; $time = strtotime( $date_string ); // dont read more if we touched entries before timeperiod of collection. if ( $time <= $this->max_already_counted_timestamp ) { $this->more_log_needed = false; return; } if ( $time > $this->history_current_timestamp_end ) { return; } while ( $time < $this->history_current_timestamp_start ) { if ( $this->history_current_pos <= 0 ) { $this->more_log_needed = false; return; } $this->setup_history_item( $this->history_current_pos - 1 ); } if ( is_null( $this->max_now_counted_timestamp ) ) { $this->max_now_counted_timestamp = $time; } if ( defined( 'W3TC_DEBUG' ) && W3TC_DEBUG ) { if ( $time < $this->min_time ) { $this->min_line = $line; $this->min_time = $time; } if ( $time > $this->max_time ) { $this->max_line = $line; $this->max_time = $time; } } $http_request_line = $e['request_line']; $http_request_line_items = explode( ' ', $http_request_line ); $uri = $http_request_line_items[1]; $time_ms = 0; if ( isset( $e['time_taken_microsecs'] ) ) { $time_ms = (int) ( $e['time_taken_microsecs'] / 1000 ); } elseif ( isset( $e['time_taken_ms'] ) ) { $time_ms = (int) $e['time_taken_ms']; } $m = null; preg_match( '~\\.([a-zA-Z0-9]+)(\?.+)?$~', $uri, $m ); if ( $m && 'php' !== $m[1] ) { ++$this->history_current_item['static_count']; $this->history_current_item['static_timetaken_ms'] += $time_ms; } else { ++$this->history_current_item['dynamic_count']; $this->history_current_item['dynamic_timetaken_ms'] += $time_ms; } } /** * Converts an Apache log format into a regular expression. * * This method translates a given Apache log format into a regular expression that can be used to parse * Apache logs. It handles various Apache log format variables and removes unnecessary modifiers. * * default: %h %l %u %t \"%r\" %>s %b * common : %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\" * * @param string $format The Apache log format string. * * @return string The regular expression to parse Apache logs. */ public function logformat_to_regexp_apache( $format ) { // remove modifiers like %>s, %!400,501{User-agent}i. $format = preg_replace( '~%[<>!0-9]([a-zA-Z{])~', '%$1', $format ); // remove modifiers %{User-agent}^ti, %{User-agent}^to. $format = preg_replace( '~%({[^}]+})(^ti|^to)~', '%$1z', $format ); // take all quoted vars. $format = preg_replace_callback( '~\\\"(%[a-zA-Z%]|%{[^}]+}[a-zA-Z])\\\"~', array( $this, 'logformat_to_regexp_apache_element_quoted' ), $format ); // take all remaining vars. $format = preg_replace_callback( '~(%[a-zA-Z%]|%{[^}]+}[a-zA-Z])~', array( $this, 'logformat_to_regexp_apache_element_naked' ), $format ); return '~' . $format . '~'; } /** * Converts a quoted Apache log format element into a regular expression. * * This method handles the conversion of quoted log elements (e.g., request lines) from Apache log format * to the corresponding regular expression pattern. * * @param array $matched_value The matched portion of the log format. * * @return string The regular expression for the quoted log element. */ public function logformat_to_regexp_apache_element_quoted( $matched_value ) { $v = $matched_value[1]; if ( '%r' === $v ) { return '\"(?<request_line>[^"]+)\"'; } // default behavior, expected value doesnt contain spaces. return '\"([^"]+)\"'; } /** * Converts a non-quoted Apache log format element into a regular expression. * * This method handles the conversion of unquoted log elements (e.g., timestamps or status codes) from * Apache log format to the corresponding regular expression pattern. * * @param array $matched_value The matched portion of the log format. * * @return string The regular expression for the non-quoted log element. */ public function logformat_to_regexp_apache_element_naked( $matched_value ) { $v = $matched_value[1]; if ( '%t' === $v ) { return '\[(?<date>[^\]]+)\]'; } elseif ( '%D' === $v ) { return '(?<time_taken_microsecs>[0-9]+)'; } // default behavior, expected value doesnt contain spaces. return '([^ ]+)'; } /** * Converts an Nginx log format into a regular expression. * * This method translates a given Nginx log format into a regular expression that can be used to parse * Nginx logs. It handles various Nginx log format variables and escapes any quotes or special characters. * * default: $remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent" * w3tc: $remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent" $request_time * * @param string $format The Nginx log format string. * * @return string The regular expression to parse Nginx logs. */ public function logformat_to_regexp_nginx( $format ) { // escape quotes. $format = preg_replace_callback( '~([\"\[\]])~', array( $this, 'logformat_to_regexp_nginx_quote' ), $format ); // take all quoted vars. $format = preg_replace_callback( '~\\\"(\$[a-zA-Z0-9_]+)\\\"~', array( $this, 'logformat_to_regexp_nginx_element_quoted' ), $format ); // take all remaining vars. $format = preg_replace_callback( '~(\$[a-zA-Z0-9_]+)~', array( $this, 'logformat_to_regexp_nginx_element_naked' ), $format ); return '~' . $format . '~'; } /** * Escapes quotes in the Nginx log format. * * This method ensures that any quotes in the Nginx log format are properly escaped for use in a regular * expression. * * @param array $matched_value The matched quote from the Nginx log format. * * @return string The escaped quote. */ public function logformat_to_regexp_nginx_quote( $matched_value ) { return '\\' . $matched_value[1]; } /** * Converts a quoted Nginx log format element into a regular expression. * * This method handles the conversion of quoted log elements (e.g., request lines) from Nginx log format * to the corresponding regular expression pattern. * * @param array $matched_value The matched portion of the log format. * * @return string The regular expression for the quoted log element. */ public function logformat_to_regexp_nginx_element_quoted( $matched_value ) { $v = $matched_value[1]; if ( '$request' === $v ) { return '\"(?<request_line>[^"]+)\"'; } // default behavior, expected value doesnt contain spaces. return '\"([^"]+)\"'; } /** * Converts a non-quoted Nginx log format element into a regular expression. * * This method handles the conversion of unquoted log elements (e.g., timestamps or request times) from * Nginx log format to the corresponding regular expression pattern. * * @param array $matched_value The matched portion of the log format. * * @return string The regular expression for the non-quoted log element. */ public function logformat_to_regexp_nginx_element_naked( $matched_value ) { $v = $matched_value[1]; if ( '$time_local' === $v ) { return '(?<date>[^\]]+)'; } elseif ( '$request_time' === $v ) { return '(?<time_taken_ms>[0-9.]+)'; } // default behavior, expected value doesnt contain spaces. return '([^ ]+)'; } }
[+]
..
[-] SystemOpCache_AdminActions.php
[edit]
[-] Generic_Plugin_AdminCompatibility.php
[edit]
[-] Util_Admin.php
[edit]
[+]
inc
[-] Extension_Swarmify_Core.php
[edit]
[-] Cdn_RackSpaceCdn_Page_View.js
[edit]
[-] Extension_CloudFlare_Popup_View_Intro.php
[edit]
[-] Extension_ImageService_Widget_View.php
[edit]
[-] UsageStatistics_Page_PageCacheRequests_View.php
[edit]
[-] Cdn_GoogleDrive_Popup_AuthReturn_View.php
[edit]
[-] Extension_Genesis_Page.php
[edit]
[-] Cache_File_Cleaner.php
[edit]
[-] SystemOpCache_Core.php
[edit]
[-] Cdnfsd_TransparentCDN_Page.php
[edit]
[-] Util_WpFile_FilesystemCopyException.php
[edit]
[-] Extension_CloudFlare_Popup.php
[edit]
[-] Extension_ImageService_Plugin_Admin.css
[edit]
[-] Extension_FragmentCache_Page_View.php
[edit]
[-] Extension_NewRelic_Widget_View.js
[edit]
[-] Cdn_RackSpaceCloudFiles_Popup_View_Regions.php
[edit]
[-] Generic_Page_General.php
[edit]
[-] UserExperience_LazyLoad_Mutator_Picture.php
[edit]
[-] Cdnfsd_BunnyCdn_Popup_View_Deauthorize.php
[edit]
[-] Generic_Page_Dashboard_View.css
[edit]
[-] Extension_Genesis_Plugin_Admin.php
[edit]
[-] BrowserCache_Environment.php
[edit]
[-] Extension_NewRelic_Api.php
[edit]
[-] Extension_ImageService_Environment.php
[edit]
[-] Cache_Memcache.php
[edit]
[-] PgCache_Environment.php
[edit]
[-] PageSpeed_Page_View_FromAPI.php
[edit]
[-] Cdn_Util.php
[edit]
[-] UserExperience_LazyLoad_Page_View.php
[edit]
[-] Generic_WidgetServices_View.php
[edit]
[-] Extension_CloudFlare_Widget.php
[edit]
[-] CdnEngine_GoogleDrive.php
[edit]
[-] PageSpeed_Widget_View.css
[edit]
[-] Cdnfsd_CloudFront_Popup_View_Intro.php
[edit]
[-] Cdnfsd_BunnyCdn_Engine.php
[edit]
[-] Cdn_RackSpace_Api_Cdn.php
[edit]
[-] BrowserCache_Core.php
[edit]
[-] Extension_FragmentCache_Page.php
[edit]
[-] Cdn_GoogleDrive_Popup_AuthReturn.php
[edit]
[-] Util_WpmuBlogmap.php
[edit]
[-] ModuleStatus.php
[edit]
[-] UsageStatistics_Source_AccessLog.php
[edit]
[-] Cdn_Page.php
[edit]
[-] UserExperience_Emoji_Extension.php
[edit]
[-] Cdn_GoogleDrive_AdminActions.php
[edit]
[-] Cdn_RackSpace_Api_CloudFiles.php
[edit]
[-] Extension_FragmentCache_WpObjectCache.php
[edit]
[-] PgCache_Page.php
[edit]
[-] Minify_Plugin.php
[edit]
[-] Cache_Xcache.php
[edit]
[-] PageSpeed_Api.php
[edit]
[-] Generic_WidgetBoldGrid_View.php
[edit]
[-] readme.txt
[edit]
[-] Cdnfsd_Core.php
[edit]
[-] Minify_ConfigLabels.php
[edit]
[-] UsageStatistics_Sources.php
[edit]
[-] BrowserCache_Environment_LiteSpeed.php
[edit]
[-] Cdn_RackSpaceCdn_Page.php
[edit]
[+]
extension-example
[-] Extension_Swarmify_Page_View.php
[edit]
[-] Extension_AlwaysCached_Page.php
[edit]
[-] UserExperience_Remove_CssJs_Page_View.php
[edit]
[-] Extension_CloudFlare_Plugin.php
[edit]
[-] CdnEngine_Azure_MI_Utility.php
[edit]
[-] Util_Mime.php
[edit]
[+]
languages
[-] BrowserCache_Page_View_QuickReference.php
[edit]
[-] UserExperience_DeferScripts_Script.js
[edit]
[+]
vendor
[-] Util_UsageStatistics.php
[edit]
[-] Extension_CloudFlare_Page_View.php
[edit]
[-] UserExperience_DeferScripts_Extension.php
[edit]
[-] UserExperience_LazyLoad_GoogleMaps_GoogleMapsEasy.php
[edit]
[-] Cdn_BunnyCdn_Popup.php
[edit]
[-] CdnEngine_Mirror_CloudFront.php
[edit]
[-] UsageStatistics_Page_ObjectCacheLog_View.php
[edit]
[-] ObjectCache_DiskPopup.js
[edit]
[-] Extension_NewRelic_Popup.php
[edit]
[-] Extension_NewRelic_Service.php
[edit]
[-] Extension_NewRelic_GeneralPage.php
[edit]
[-] Generic_Plugin_Admin_View_Faq.php
[edit]
[-] Extension_Wpml_Plugin_Admin.php
[edit]
[-] press.txt
[edit]
[-] Util_File.php
[edit]
[-] Cdn_RackSpaceCdn_Popup.php
[edit]
[-] Extension_ImageService_Widget.js
[edit]
[-] UsageStatistics_Page_DbRequests_View.php
[edit]
[-] Cdnfsd_BunnyCdn_Popup_View_Configured.php
[edit]
[-] Cdn_RackSpaceCdn_Popup_View_Regions.php
[edit]
[-] Util_Activation.php
[edit]
[-] Generic_WidgetAccount_View.php
[edit]
[-] UserExperience_LazyLoad_Plugin.php
[edit]
[-] Cdnfsd_CloudFront_Page_View.js
[edit]
[-] UsageStatistics_AdminActions.php
[edit]
[-] Cdnfsd_Util.php
[edit]
[-] PageSpeed_Widget.php
[edit]
[-] Cdn_RackSpaceCdn_Popup_View_Service_Create.php
[edit]
[-] PageSpeed_Page_View.css
[edit]
[-] Extension_FragmentCache_Plugin.php
[edit]
[-] Extension_AlwaysCached_Queue.php
[edit]
[-] CdnEngine.php
[edit]
[-] PgCache_Page_View.js
[edit]
[-] SystemOpCache_Plugin_Admin.php
[edit]
[-] Cache_File.php
[edit]
[-] Generic_Environment.php
[edit]
[-] Util_Installed.php
[edit]
[-] Licensing_AdminActions.php
[edit]
[-] CacheFlush.php
[edit]
[-] ObjectCache_DiskPopup_View.php
[edit]
[-] SetupGuide_Plugin_Admin.php
[edit]
[-] Extension_AlwaysCached_Page_View_BoxQueue.php
[edit]
[-] Util_Environment_Exception.php
[edit]
[-] Cdn_AdminNotes.php
[edit]
[-] UsageStatistics_Page_View.php
[edit]
[-] Cdn_RackSpaceCdn_Popup_View_Service_Created.php
[edit]
[-] Extension_AlwaysCached_Plugin.php
[edit]
[-] Generic_Page_About.php
[edit]
[+]
wp-content
[-] UsageStatistics_StorageWriter.php
[edit]
[-] Extension_Genesis_Page_View.php
[edit]
[-] Cdn_Core_Admin.php
[edit]
[-] Support_Page.php
[edit]
[-] Extension_NewRelic_Plugin.php
[edit]
[-] Minify_GeneralPage_View_ShowHelp.js
[edit]
[-] w3-total-cache-old-php.php
[edit]
[-] PgCache_ContentGrabber.php
[edit]
[-] Util_PageUrls.php
[edit]
[-] DbCache_Plugin.php
[edit]
[-] Cdnfsd_BunnyCdn_Popup_View_Intro.php
[edit]
[-] Cdn_RackSpaceCdn_AdminActions.php
[edit]
[-] BrowserCache_Page_View_SectionSecurity.php
[edit]
[-] Cdnfsd_TransparentCDN_Page_View.php
[edit]
[-] DbCache_WpdbBase.php
[edit]
[-] Cdn_AdminActions.php
[edit]
[-] CacheGroups_Plugin_Admin.php
[edit]
[-] Cdn_Plugin.php
[edit]
[-] Generic_WidgetServices.php
[edit]
[-] ObjectCache_Plugin.php
[edit]
[-] CdnEngine_S3.php
[edit]
[-] Dispatcher.php
[edit]
[-] Util_WpFile_FilesystemMkdirException.php
[edit]
[-] Generic_WidgetPartners_View.php
[edit]
[-] Generic_Plugin_AdminNotices.css
[edit]
[-] Root_AdminActions.php
[edit]
[-] Cache_File_Cleaner_Generic.php
[edit]
[-] UserExperience_LazyLoad_Mutator.php
[edit]
[-] UserExperience_LazyLoad_GoogleMaps_WPGoogleMapPlugin.php
[edit]
[-] Generic_ConfigLabels.php
[edit]
[-] PageSpeed_Data.php
[edit]
[-] Minify_Extract.php
[edit]
[-] PgCache_ConfigLabels.php
[edit]
[-] Cdn_BunnyCdn_Popup_View_Deauthorized.php
[edit]
[-] DbCache_Wpdb.php
[edit]
[-] Extension_NewRelic_Widget_View.css
[edit]
[-] Generic_GeneralPage_View_ShowEdge.js
[edit]
[-] Generic_WidgetBoldGrid_AdminActions.php
[edit]
[-] Extension_WordPressSeo_Plugin.php
[edit]
[-] DbCache_WpdbNew.php
[edit]
[-] Cdn_BunnyCdn_Widget_View_Authorized.php
[edit]
[-] UsageStatistics_Page_View.js
[edit]
[-] Extension_CloudFlare_Page_View.js
[edit]
[-] Generic_Plugin_Admin.php
[edit]
[-] CdnEngine_RackSpaceCloudFiles.php
[edit]
[-] Util_Environment.php
[edit]
[-] CdnEngine_Ftp.php
[edit]
[-] UserExperience_Page_View.php
[edit]
[-] DbCache_Environment.php
[edit]
[-] Root_AdminActivation.php
[edit]
[-] Generic_Page_Dashboard.php
[edit]
[-] Cdn_RackSpaceCloudFiles_Popup_View_Containers.php
[edit]
[-] Generic_WidgetSpreadTheWord_Plugin.php
[edit]
[-] Cdn_RackSpaceCloudFiles_Page_View.js
[edit]
[-] UserExperience_Remove_CssJs_Mutator.php
[edit]
[-] Util_Rule.php
[edit]
[-] UsageStatistics_Sources_Memcached.php
[edit]
[-] Extension_FragmentCache_GeneralPage.php
[edit]
[-] Cdnfsd_CloudFront_Engine.php
[edit]
[-] security.md
[edit]
[-] ObjectCache_Page.php
[edit]
[-] Extension_NewRelic_AdminActions.php
[edit]
[-] Cdn_CacheFlush.php
[edit]
[-] Extension_FragmentCache_Core.php
[edit]
[-] Cdn_GoogleDrive_Page.php
[edit]
[-] FeatureShowcase_Plugin_Admin.php
[edit]
[-] CdnEngine_Mirror_BunnyCdn.php
[edit]
[-] ConfigUtil.php
[edit]
[-] UserExperience_DeferScripts_Page_View.php
[edit]
[-] Extension_Amp_Plugin.php
[edit]
[-] Cdn_Page_View_Fsd_HeaderActions.php
[edit]
[-] ConfigSettingsTabs.php
[edit]
[-] Util_WpFile_FilesystemOperationException.php
[edit]
[-] ConfigSettingsTabsKeys.php
[edit]
[-] Cdn_RackSpaceCloudFiles_Popup_View_Intro.php
[edit]
[-] Cdnfsd_Plugin_Admin.php
[edit]
[-] Extension_FragmentCache_Api.php
[edit]
[-] Generic_Plugin_AdminNotices.js
[edit]
[-] Mobile_Redirect.php
[edit]
[-] Util_Http.php
[edit]
[-] Util_Ui.php
[edit]
[-] Minify_Plugin_Admin.php
[edit]
[-] Extensions_AdminActions.php
[edit]
[-] Cache_Base.php
[edit]
[-] UserExperience_LazyLoad_GoogleMaps_WPGoogleMaps.php
[edit]
[-] Generic_Faq.php
[edit]
[-] Extension_WordPressSeo_Plugin_Admin.php
[edit]
[-] Extension_FragmentCache_Environment.php
[edit]
[-] CdnEngine_Mirror_Cotendo.php
[edit]
[-] Extension_NewRelic_Page_View_Apm.php
[edit]
[-] Generic_Page_Install.php
[edit]
[-] Minify_Core.php
[edit]
[-] Cdnfsd_CloudFront_Popup_View_Distribution.php
[edit]
[-] Generic_AdminActions_Config.php
[edit]
[-] Cdn_Environment.php
[edit]
[-] UserExperience_Plugin_Admin.php
[edit]
[-] Generic_WidgetStats.php
[edit]
[+]
lib
[-] Extension_CloudFlare_Plugin_Admin.php
[edit]
[-] Cdnfsd_BunnyCdn_Page_View.php
[edit]
[-] LICENSE
[edit]
[-] Licensing_Plugin_Admin.php
[edit]
[-] Cdn_RackSpaceCloudFiles_Page_View.php
[edit]
[-] Cdn_GeneralPage_View.php
[edit]
[-] Extension_CloudFlare_Widget_View.css
[edit]
[-] Cdnfsd_GeneralPage_View.php
[edit]
[-] Extension_CloudFlare_Popup_View_Zones.php
[edit]
[-] Extension_AlwaysCached_Worker.php
[edit]
[-] Cdn_BunnyCdn_Page_View.php
[edit]
[-] UsageStatistics_Source_DbQueriesLog.php
[edit]
[-] UsageStatistics_Page_View_Ad.php
[edit]
[-] DbCache_WpdbLegacy.php
[edit]
[-] Util_PageSpeed.php
[edit]
[-] Minify_HelpPopup_View.php
[edit]
[-] Extension_ImageService_Page_View.php
[edit]
[-] Generic_WidgetPartners.php
[edit]
[-] Enterprise_SnsServer.php
[edit]
[-] Extension_CloudFlare_GeneralPage_View.php
[edit]
[-] Extension_ImageService_Plugin_Admin.js
[edit]
[-] w3-total-cache.php
[edit]
[-] Cdn_BunnyCdn_Page_View.js
[edit]
[-] ConfigState.php
[edit]
[-] Generic_AdminActions_Test.php
[edit]
[-] Cache_Nginx_Memcached.php
[edit]
[-] PgCache_Plugin.php
[edit]
[-] Util_Environment_Exceptions.php
[edit]
[-] Cdnfsd_CloudFront_Page_View.php
[edit]
[-] UsageStatistics_Sources_Redis.php
[edit]
[-] UsageStatistics_Page_View_Disabled.php
[edit]
[-] Extension_CloudFlare_AdminActions.php
[edit]
[-] Extension_AlwaysCached_AdminActions.php
[edit]
[-] Extension_CloudFlare_Page.php
[edit]
[-] Cache_File_Generic.php
[edit]
[-] Cache_Memcached_Stats.php
[edit]
[-] CdnEngine_Mirror.php
[edit]
[-] Extension_ImageService_Widget.php
[edit]
[-] Util_WpFile.php
[edit]
[-] Cache_Apc.php
[edit]
[-] ObjectCache_Plugin_Admin.php
[edit]
[-] Cdnfsd_BunnyCdn_Popup.php
[edit]
[-] Extension_NewRelic_Widget_View_NotConfigured.php
[edit]
[-] PageSpeed_Widget_View.php
[edit]
[-] Licensing_Core.php
[edit]
[-] UserExperience_LazyLoad_Mutator_Unmutable.php
[edit]
[-] Minify_Page.php
[edit]
[-] Extensions_Page.php
[edit]
[-] Util_AttachToActions.php
[edit]
[-] Generic_AdminNotes.php
[edit]
[-] Cdn_BunnyCdn_Page_View_Purge_Urls.php
[edit]
[-] Cdnfsd_BunnyCdn_Page_View.js
[edit]
[-] Minify_AutoJs.php
[edit]
[-] Cdn_RackSpaceCloudFiles_Popup.php
[edit]
[-] UserExperience_Preload_Requests_Page_View.php
[edit]
[-] Generic_WidgetSpreadTheWord.js
[edit]
[-] Util_Request.php
[edit]
[-] Generic_WidgetBoldGrid_Logo.svg
[edit]
[-] Cdn_RackSpaceCdn_Popup_View_Services.php
[edit]
[-] ObjectCache_ConfigLabels.php
[edit]
[-] UsageStatistics_StorageReader.php
[edit]
[-] BrowserCache_Page.php
[edit]
[-] Extension_CloudFlare_SettingsForUi.php
[edit]
[-] Cdn_BunnyCdn_Widget_View_Unauthorized.php
[edit]
[-] CdnEngine_Mirror_RackSpaceCdn.php
[edit]
[-] Util_WpFile_FilesystemModifyException.php
[edit]
[-] Extension_Swarmify_AdminActions.php
[edit]
[-] DbCache_WpdbInjection.php
[edit]
[-] Extension_AlwaysCached_Page_View.js
[edit]
[-] Support_Page_View_DoneContent.php
[edit]
[-] BrowserCache_Plugin.php
[edit]
[-] Util_Bus.php
[edit]
[-] UsageStatistics_Plugin.php
[edit]
[-] Cache_File_Cleaner_Generic_HardDelete.php
[edit]
[-] Generic_Page_PurgeLog.php
[edit]
[-] Cdnfsd_BunnyCdn_Page.php
[edit]
[-] Util_WpFile_FilesystemChmodException.php
[edit]
[-] Generic_AdminActions_Flush.php
[edit]
[-] Extension_Swarmify_Page.php
[edit]
[-] Extension_CloudFlare_Api.php
[edit]
[-] PageSpeed_Instructions.php
[edit]
[-] Extension_Genesis_Plugin.php
[edit]
[-] Util_Theme.php
[edit]
[-] CdnEngine_CloudFront.php
[edit]
[-] Cdnfsd_CacheFlush.php
[edit]
[-] Cdn_Environment_LiteSpeed.php
[edit]
[-] Cdn_BunnyCdn_Api.php
[edit]
[-] UserExperience_OEmbed_Extension.php
[edit]
[-] PgCache_QsExempts.php
[edit]
[-] BrowserCache_Environment_Nginx.php
[edit]
[-] Extension_ImageService_Plugin_Admin.php
[edit]
[-] Cdn_RackSpace_Api_CaCert-example.pem
[edit]
[-] Extension_NewRelic_Popup_View_ListApplications.php
[edit]
[-] UserExperience_GeneralPage_View.php
[edit]
[-] ConfigKeys.php
[edit]
[-] Extension_ImageService_Api.php
[edit]
[-] Extension_NewRelic_Plugin_Admin.php
[edit]
[-] w3-total-cache-api.php
[edit]
[-] Mobile_UserAgent.php
[edit]
[-] Util_WpFile_FilesystemRmException.php
[edit]
[-] CdnEngine_Base.php
[edit]
[-] UserExperience_GeneralPage.php
[edit]
[-] ConfigCompiler.php
[edit]
[-] PgCache_Flush.php
[edit]
[-] PageSpeed_Page.php
[edit]
[-] PageSpeed_Page_View.js
[edit]
[-] Generic_WidgetSettings_View.php
[edit]
[-] Root_Environment.php
[edit]
[-] SystemOpCache_GeneralPage_View.php
[edit]
[-] Extension_AlwaysCached_Page_Queue_View.php
[edit]
[-] UsageStatistics_Page_View_NoDebugMode.php
[edit]
[-] Cdn_RackSpaceCdn_Popup_View_Intro.php
[edit]
[-] ObjectCache_WpObjectCache_Regular.php
[edit]
[-] Extension_CloudFlare_View_Dashboard.js
[edit]
[-] Cdnfsd_BunnyCdn_Popup_View_Pull_Zones.php
[edit]
[-] Extension_Wpml_Plugin.php
[edit]
[-] Minify_AutoCss.php
[edit]
[-] Generic_WidgetSpreadTheWord_View.php
[edit]
[-] UserExperience_Plugin_Jquery.php
[edit]
[-] Extension_ImageService_Plugin.php
[edit]
[-] CdnEngine_Azure_MI.php
[edit]
[-] Util_ConfigLabel.php
[edit]
[-] Extension_ImageService_Cron.php
[edit]
[-] UsageStatistics_GeneralPage.php
[edit]
[-] index.html
[edit]
[-] ConfigCache.php
[edit]
[-] Extension_NewRelic_AdminNotes.php
[edit]
[-] Generic_WidgetBoldGrid_View.js
[edit]
[-] ObjectCache_WpObjectCache.php
[edit]
[-] Cdnfsd_TransparentCDN_Page_View.js
[edit]
[-] ConfigStateNote.php
[edit]
[-] Mobile_Base.php
[edit]
[-] Cdnfsd_CloudFront_Popup.php
[edit]
[-] Generic_WidgetAccount.php
[edit]
[-] Generic_WidgetSettings.php
[edit]
[-] Generic_Plugin_AdminNotices.php
[edit]
[-] Enterprise_CacheFlush_MakeSnsEvent.php
[edit]
[-] Extension_Swarmify_Plugin.php
[edit]
[-] Support_Page_View_PageContent.php
[edit]
[-] Generic_AdminActions_Default.php
[edit]
[-] Cdn_GoogleDrive_Page_View.php
[edit]
[-] Cdnfsd_CloudFront_Popup_View_Distributions.php
[edit]
[-] PageSpeed_Page_View.php
[edit]
[-] Extension_AlwaysCached_Page_View.php
[edit]
[-] Generic_WidgetStats.js
[edit]
[-] Extension_NewRelic_Page.php
[edit]
[-] UserExperience_Remove_CssJs_Page_View.js
[edit]
[-] Cdnfsd_Plugin.php
[edit]
[-] Cache_Memcached.php
[edit]
[-] CdnEngine_Mirror_Edgecast.php
[edit]
[-] Support_AdminActions.php
[edit]
[-] UserExperience_Page.php
[edit]
[-] Cdnfsd_CloudFront_Popup_View_Success.php
[edit]
[-] Cdn_RackSpace_Api_CloudFilesCdn.php
[edit]
[-] Cdn_RackSpaceCdn_Popup_View_ConfigureDomains.php
[edit]
[-] Extension_NewRelic_GeneralPage_View.php
[edit]
[-] Varnish_Plugin.php
[edit]
[+]
pub
[-] UsageStatistics_Page_View.css
[edit]
[-] Cdn_BunnyCdn_Popup_View_Deauthorize.php
[edit]
[-] UsageStatistics_Sources_Apc.php
[edit]
[-] UsageStatistics_Page.php
[edit]
[-] Extension_NewRelic_Popup_View.js
[edit]
[-] Extension_AlwaysCached_Page_View_BoxFlushAll.php
[edit]
[-] DbCache_Plugin_Admin.php
[edit]
[-] UsageStatistics_Source_Wpdb.php
[edit]
[-] Extension_Amp_Plugin_Admin.php
[edit]
[-] Extension_CloudFlare_Widget_Logo.png
[edit]
[-] changelog.txt
[edit]
[-] UsageStatistics_Plugin_Admin.php
[edit]
[-] Cdn_RackSpaceCdn_Popup_View_Service_Actualize.php
[edit]
[-] Cdn_Core.php
[edit]
[-] Util_Content.php
[edit]
[-] CacheFlush_Locally.php
[edit]
[-] Config.php
[edit]
[-] CdnEngine_Mirror_Att.php
[edit]
[-] Generic_WidgetBoldGrid.php
[edit]
[-] Cli.php
[edit]
[-] Cdn_GoogleDrive_Page_View.js
[edit]
[-] Extension_NewRelic_Popup_View_Intro.php
[edit]
[-] DbCache_WpdbInjection_QueryCaching.php
[edit]
[-] Extension_AlwaysCached_Page_View_Exclusions.php
[edit]
[-] Minify_GeneralPage_View_ShowHelpForce.js
[edit]
[-] CacheGroups_Plugin_Admin_View.php
[edit]
[-] DbCache_Page.php
[edit]
[-] Extension_CloudFlare_Cdn_Page_View.php
[edit]
[-] Enterprise_SnsBase.php
[edit]
[-] Cdn_Environment_Nginx.php
[edit]
[-] Extension_AlwaysCached_Page_View_BoxCron.php
[edit]
[-] Extension_FragmentCache_GeneralPage_View.php
[edit]
[-] CacheGroups_Plugin_Admin_View.js
[edit]
[-] UsageStatistics_Source_ObjectCacheLog.php
[edit]
[-] Cdnfsd_CloudFront_Page.php
[edit]
[-] Extension_Amp_Page_View.php
[edit]
[-] Util_Widget.php
[edit]
[-] Cdn_BunnyCdn_Page.php
[edit]
[-] Cdn_RackSpaceCloudFiles_Page.php
[edit]
[-] Cdn_RackSpaceCdn_Page_View.php
[edit]
[-] CdnEngine_Mirror_Akamai.php
[edit]
[-] Cdn_BunnyCdn_Widget.php
[edit]
[-] Extension_NewRelic_Widget_View_Apm.php
[edit]
[-] BrowserCache_Plugin_Admin.php
[edit]
[-] BrowserCache_ConfigLabels.php
[edit]
[-] CdnEngine_Azure.php
[edit]
[-] DbCache_ConfigLabels.php
[edit]
[-] PageSpeed_Widget_View.js
[edit]
[-] Minify_MinifiedFileRequestHandler.php
[edit]
[-] Extension_FragmentCache_Plugin_Admin.php
[edit]
[-] Extension_AlwaysCached_Plugin_Admin.php
[edit]
[-] BrowserCache_Environment_Apache.php
[edit]
[-] Extension_AlwaysCached_Environment.php
[edit]
[-] Generic_Plugin.php
[edit]
[-] Generic_Page_PurgeLog_View.php
[edit]
[-] Cdnfsd_BunnyCdn_Popup_View_Deauthorized.php
[edit]
[-] Extensions_Util.php
[edit]
[-] Extensions_Plugin_Admin.php
[edit]
[-] Root_Loader.php
[edit]
[-] Extension_NewRelic_Widget.php
[edit]
[-] Minify_Environment_LiteSpeed.php
[edit]
[+]
ini
[-] Cdn_ConfigLabels.php
[edit]
[-] Cdn_Plugin_Admin.php
[edit]
[-] DbCache_Core.php
[edit]
[-] Util_WpFile_FilesystemWriteException.php
[edit]
[-] Base_Page_Settings.php
[edit]
[-] UsageStatistics_Page_View_Free.php
[edit]
[-] Minify_ContentMinifier.php
[edit]
[-] Cdn_BunnyCdn_Widget_View.css
[edit]
[-] Cache_Apcu.php
[edit]
[-] Util_Debug.php
[edit]
[-] ConfigDbStorage.php
[edit]
[-] UsageStatistics_GeneralPage_View.php
[edit]
[-] Cache_Wincache.php
[edit]
[-] PgCache_Plugin_Admin.php
[edit]
[-] UserExperience_Remove_CssJs_Extension.php
[edit]
[-] Cache_Redis.php
[edit]
[-] Util_DebugPurgeLog_Reader.php
[edit]
[-] Generic_Plugin_Survey.php
[edit]
[-] Cache.php
[edit]
[-] Varnish_Flush.php
[edit]
[-] UsageStatistics_Core.php
[edit]
[-] Extension_CloudFlare_Widget_View.php
[edit]
[-] Extension_NewRelic_Core.php
[edit]
[-] Cdn_BunnyCdn_Popup_View_Configured.php
[edit]
[-] Cdnfsd_TransparentCDN_Engine.php
[edit]
[-] Cache_Eaccelerator.php
[edit]
[-] PageSpeed_Widget_View_FromApi.php
[edit]
[-] ObjectCache_Page_View_PurgeLog.php
[edit]
[-] Cdn_BunnyCdn_Popup_View_Pull_Zones.php
[edit]
[-] Minify_Environment.php
[edit]
[-] Cdn_BunnyCdn_Popup_View_Intro.php
[edit]
[-] Util_WpFile_FilesystemRmdirException.php
[edit]
[-] Mobile_Referrer.php
[edit]
[-] CdnEngine_S3_Compatible.php
[edit]
[-] Cdn_RackSpace_Api_Tokens.php
[edit]
[-] Enterprise_Dbcache_WpdbInjection_Cluster.php
[edit]
[-] Extension_NewRelic_Widget_View_Browser.php
[edit]
[-] UserExperience_DeferScripts_Mutator.php
[edit]
[-] UsageStatistics_Source_PageCacheLog.php
[edit]
[-] Generic_Plugin_AdminRowActions.php
[edit]
[-] FeatureShowcase_Plugin_Admin_View.php
[edit]
[-] Root_AdminMenu.php
[edit]
[-] ObjectCache_Environment.php
[edit]
[-] UserExperience_Preload_Requests_Extension.php
[edit]
[-] Extension_Swarmify_Plugin_Admin.php
[edit]