Как лучше сделать редирект с http на https?
Как по мне - это дело веб-сервера разруливать порты и протоколы - значит лучше делать в конфигах сервера.
К тому же, если я правильно понимаю, если поручить это дело скрипту - он все равно с этим пойдет на поклон к серверу :)
Другое дело если вы хотите как-то особым образом обработать факт обращения на http - но вам это вроде не надо))
Поисковики сами советуют (по крайней мере, Яндекс) делать 301 редирект на стороне сервера. Всегда делаю именно так, никаких проблем не было.