Em situações como essa, eu sou um grande fã do grep usando lookarounds do Perl
grep -oP '(?<=http://).*(?=;)' access.log | sort -u
retornará uma lista usando sua amostra da seguinte forma
$ grep -oP '(?<=http://).*(?=;)' access.log | sort -u
demo.otherdomain.com/blog
my.example.com
somedomain.com