WordPress redirects non-existing url to existing ones – how to disable

This question is a duplicate of Disable ONLY URL auto complete, not the whole canonical URL system

Try this filter

function remove_redirect_guess_404_permalink( $redirect_url ) {
if ( is_404() )
    return false;
return $redirect_url;
}

add_filter( 'redirect_canonical', 'remove_redirect_guess_404_permalink' );

Or this plugin: https://wordpress.org/plugins/disable-url-autocorrect-guessing/