Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 15 additions & 3 deletions src/helpers.php
Original file line number Diff line number Diff line change
Expand Up @@ -219,11 +219,24 @@ function mcd_remove_violation( $id ) {
* @return bool True if URI is connectable; false if it is not.
*/
function mcd_is_valid_uri( $uri ) {
$pieces = parse_url( $uri );

if ( ! isset( $pieces['host'] ) ) {
return false;
}

// Piece the domain back together
$uri = $pieces['host'];
$uri .= ( isset( $pieces['port'] ) ) ? ':' . absint( $pieces['port'] ) : '';

// Add the scheme
$uri = 'https://' . $uri;

$response = wp_remote_get( $uri, array(
/**
* Do a HEAD request for efficiency.
*/
'method' => 'HEAD',
'method' => 'HEAD',

/**
* HEAD requests will not redirect by default. It is important that redirection works in case the
Expand Down Expand Up @@ -251,8 +264,7 @@ function mcd_is_valid_uri( $uri ) {
* @return bool True if URI is connectable; false if it is not.
*/
function mcd_uri_has_secure_version( $uri ) {
$https_uri = set_url_scheme( $uri, 'https' );
return mcd_is_valid_uri( $https_uri );
return mcd_is_valid_uri( $uri );
}
endif;

Expand Down