В WordPress, начиная с версии 2.6, встроена поддержка HTTPS: можно сделать либо HTTPS-логин, либо поместить панель администратора за SSL. Однако, из-за особенностей реализации, когда пользователь входит в систему, он получает cookie либо для HTTP, либо для HTTPS. Иными словами, если пользователь попал на http://example.com/wp-admin/
, то при переходе на https://example.com/wp-admin/
ему придётся входить в систему еще раз.
Всё бы ничего, но если плагин делает POST на HTTPS, то пользователь попадает на wp-login.php, который после успешного входа сделает перенаправление (GET) на URL, который ожидает принять POST. При этом если POST шёл на https://example.com/wp-admin/admin.php?page=somepage&noheader=1
, то пользователь увидит безобразную страницу. Далее