Я думаю, вам нужно urlencode URL-части:
echo urlencode('https://duckduckgo.com');
это вернет https%3A%2F%2Fduckduckgo.com
Это потому, что /
-Sign имеет особое значение в URL. Вы не можете использовать его без кода.
Так что попробуйте http://localhost/blog/external-link/https%3A%2F%2Fduckduckgo.com
, и вы будете более успешны.