diff --git a/res/res_musiconhold.c b/res/res_musiconhold.c
index 8ac3b927cf164db8142bd9f68faea858904c2294..736ddc68ab7fd0b4f721ad8161487727246d2b31 100644
--- a/res/res_musiconhold.c
+++ b/res/res_musiconhold.c
@@ -1118,7 +1118,7 @@ static void moh_parse_options(struct ast_variable *var, struct mohclass *mohclas
 		} else if (!strcasecmp(var->name, "mode")) {
 			ast_copy_string(mohclass->mode, var->value, sizeof(mohclass->mode));
 		} else if (!strcasecmp(var->name, "entry")) {
-			if (ast_begins_with(var->value, "/") || ast_begins_with(var->value, "http://") || ast_begins_with(var->value, "https://")) {
+			if (ast_begins_with(var->value, "/") || strstr(var->value, "://")) {
 				char *dup;
 
 				if (!playlist_entries) {
@@ -1144,7 +1144,7 @@ static void moh_parse_options(struct ast_variable *var, struct mohclass *mohclas
 
 				AST_VECTOR_APPEND(playlist_entries, dup);
 			} else {
-				ast_log(LOG_ERROR, "Playlist entries must be an HTTP(S) URL or absolute path, '%s' provided.\n", var->value);
+				ast_log(LOG_ERROR, "Playlist entries must be a URL or an absolute path, '%s' provided.\n", var->value);
 			}
 		} else if (!strcasecmp(var->name, "directory")) {
 			ast_copy_string(mohclass->dir, var->value, sizeof(mohclass->dir));