get_server() === "apache" || $this->get_server() === "litespeed" ) { return true; } return false; } /** * Returns the server type of the plugin user. * * @return string|bool server type the user is using of false if undetectable. */ public function get_server() { //Allows to override server authentication for testing or other reasons. if ( defined( 'RSSSL_SERVER_OVERRIDE' ) ) { return RSSSL_SERVER_OVERRIDE; } $server_raw = strtolower( htmlspecialchars( $_SERVER['SERVER_SOFTWARE'] ) ); //figure out what server they're using if ( strpos( $server_raw, 'apache' ) !== false ) { return 'apache'; } elseif ( strpos( $server_raw, 'nginx' ) !== false ) { return 'nginx'; } elseif ( strpos( $server_raw, 'litespeed' ) !== false ) { return 'litespeed'; } else { //unsupported server return false; } } /** * Check if the apache version is at least 2.4 * @return bool */ public function apache_version_min_24(){ $version = $_SERVER['SERVER_SOFTWARE'] ?? false; //check if version is higher then 2.4. if ( preg_match('/Apache\/(2\.[4-9])/', $version, $matches) ){ return true; } return false; } } //class closure }