diff --git a/src/config/load.ts b/src/config/load.ts
index fc3e699199..904305647d 100644
--- a/src/config/load.ts
+++ b/src/config/load.ts
@@ -47,14 +47,21 @@ export default function load() {
 	return Object.assign(config, mixin);
 }
 
-function validateUrl(url: string) {
+function tryCreateUrl(url: string) {
 	try {
 		return new URL(url);
 	} catch (e) {
-		throw `url="${url}" is not a valid URL`;
+		throw `url="${url}" is not a valid URL.`;
 	}
 }
 
+function validateUrl(url: string) {
+	const result = tryCreateUrl(url);
+	if (result.pathname.trim('/').length) throw `url="${url}" is not a valid URL, has a pathname.`;
+	if (!url.includes(result.host)) throw `url="${url}" is not a valid URL, has an invalid hostname.`;
+	return result;
+}
+
 function normalizeUrl(url: string) {
 	return url.endsWith('/') ? url.substr(0, url.length - 1) : url;
 }