Как загрузить файл на другой сайт?
Если оба сайта на одном и том же веб-сервере, то просто записать в нужную папку.
Если на разных, то - сюрприз! - на site2 должен быть установлен какой-либо механизм приема файлов. И уже под этот конкретный механизм надо искать реализацию.
Если сервера разные еще, как вариант, внешнее хранилище. Например Amazon S3 aws.amazon.com/ru/s3 
Плюсы - надежность и легкость в реализации. Минусы, если нагрузки маленькие, то того не стоит, дешевле мутить что-то между серверами.  
Если сервер один, то, определенно, лучший вариант уже озвучил FanatPHP с нужной папкой.