Make WordPress Core

Opened 10 years ago

Closed 10 years ago

Last modified 10 years ago

#30828 closed defect (bug) (duplicate)

SSL without multisite - loop error

Reported by: nikitabasenko's profile nikitabasenko Owned by:
Milestone: Priority: normal
Severity: critical Version: 4.1
Component: General Keywords:
Focuses: Cc:

Description

Ok, so here is the deal. I've got around 5-7 site at wordpress.
A few of them are my own. I've desiced to make an ssl on site.
Usin FAQ with version 4.0.1 i've tried to change the setting in admin console from http to https. Both lines (adress site and wordpress). So, i've got the loop.
Then after back up i did the same thing, but only with site or adress of wordpress. Result - the same.
i thought that it's a problem with theme or wp. So, i made a back up of site and opened a new subdomain for test - my.sitename.com, payed for ssl-certificate and started from "0":

  1. Downloaded the latest version of WP
  2. Installed it with default theme
  3. Made changes at console from http to https.

Resule - loop.

After i managed all this results and wrote to hoster. He send me repsond that there is a problem with files at folder wp-includes. So, he did some changes there. I got the to FTP. So, the site began to work.

But there are a few problems:

  1. While i'm trying to login - Fatal error: Call to undefined function wp_json_encode() in ../wp-admin/includes/misc.php on line 668
  2. Main page - http (with some includes http, ofcourse i can solve it, but it's default topic....(((
  3. As i told before, i'me talking about default theme. So, lets say, that i'm no coder, so after installing/updating to 4.1/4.0.1 my site goes to loop if i'm trying to change the adress to https.

I'm not even talking about other plugins or themes for now. It's the other topic for sure.

If enyone else got the solving of this problem, i'd like to know about the solution. Cause i'm out of options for now.
I'll try today to backup to previous version of WP (4.0.1) and try to iclude the files from hoster. But i don't think it's good for site to work like that.

I don't have multisite. Certificate is not a problem for sure.
And plus i'm talking about adding https for the whole site, not for the wp-admin only.

Thx for help.

Change History (10)

#1 @nikitabasenko
10 years ago

  • Severity changed from normal to critical

#2 follow-up: @SergeyBiryukov
10 years ago

While i'm trying to login - Fatal error: Call to undefined function wp_json_encode() in ../wp-admin/includes/misc.php on line 668

This sounds like an incomplete 4.0.1 to 4.1 upgrade. wp_json_encode() is defined in wp-includes/functions.php.

The main issue here appears to be the SSL redirect loop. Might be related to #29708.

Last edited 10 years ago by SergeyBiryukov (previous) (diff)

#3 @nikitabasenko
10 years ago

Last edited 10 years ago by nikitabasenko (previous) (diff)

#4 in reply to: ↑ 2 @nikitabasenko
10 years ago

Replying to SergeyBiryukov:

While i'm trying to login - Fatal error: Call to undefined function wp_json_encode() in ../wp-admin/includes/misc.php on line 668

This sounds like an incomplete 4.0.1 to 4.1 upgrade. wp_json_encode() is defined in wp-includes/functions.php.

The main issue here appears to be the SSL redirect loop. Might be related to #29708.

Thx, Sergey. About Fatal error: Call to undefined function wp_json_encode() - will try to backup to previous version of WP.
About SSL, don't know about #29708, but in 4.0.1 in default confing - the error exists for sure.

#5 follow-up: @nacin
10 years ago

  • Milestone Awaiting Review deleted
  • Resolution set to invalid
  • Status changed from new to closed

Given the issue with wp_json_encode(), I'm going to close this out as invalid for now. nikitabasenko, please feel free to reopen if you think you've found a bug. In the meantime, I'd suggest trying the support forums, where some very awesome folks with experience in multisite may be able to help you diagnose this: https://wordpress.org/support/forum/multisite

#6 in reply to: ↑ 5 @nikitabasenko
10 years ago

  • Resolution invalid deleted
  • Status changed from closed to reopened

Replying to nacin:

Given the issue with wp_json_encode(), I'm going to close this out as invalid for now. nikitabasenko, please feel free to reopen if you think you've found a bug. In the meantime, I'd suggest trying the support forums, where some very awesome folks with experience in multisite may be able to help you diagnose this: https://wordpress.org/support/forum/multisite

Let's leave the "Fatal error: Call to undefined function wp_json_encode() in ../wp-admin/includes/misc.php on line 668" problem.

Main bug is that if i change my default settings with WP 4.1 "site url" and "wp-url" from http to https, site goes to loop. Trying to load https. That's the main problem. The same with 4.0

And it's not a multysite.

Last edited 10 years ago by nikitabasenko (previous) (diff)

#7 follow-up: @nikitabasenko
10 years ago

  • Resolution set to worksforme
  • Status changed from reopened to closed

Solution was simple:

  1. Change http to https in wp-admin options
  2. in file wp-includes/functions.php i've made a changes at lines 3670, 3671, 3673 from HTTPS to HTTP_SSL

And that's it.

After i had to make a changes to my htaccess file at root (the hoster told me to do):

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP:SSL} !=1 [NC]
RewriteRule ^(.*) https://www.сайт.com/$1 [L,R=301]
Last edited 10 years ago by SergeyBiryukov (previous) (diff)

#8 in reply to: ↑ 7 ; follow-up: @SergeyBiryukov
10 years ago

  • Resolution changed from worksforme to duplicate

Replying to nikitabasenko:

  1. in file wp-includes/functions.php i've made a changes at lines 3670, 3671, 3673 from HTTPS to HTTP_SSL

Thanks for following up! This appears to be a duplicate of #15733 and #19337.

If you map HTTP_SSL to HTTPS in your wp-config.php file, it should be enough to avoid changing the is_ssl() function:

$_SERVER['HTTPS'] = !empty( $_SERVER['HTTP_SSL'] ) ? $_SERVER['HTTP_SSL'] : 0;

#9 in reply to: ↑ 8 @nikitabasenko
10 years ago

Replying to SergeyBiryukov:

Replying to nikitabasenko:

  1. in file wp-includes/functions.php i've made a changes at lines 3670, 3671, 3673 from HTTPS to HTTP_SSL

Thanks for following up! This appears to be a duplicate of #15733 and #19337.

If you map HTTP_SSL to HTTPS in your wp-config.php file, it should be enough to avoid changing the is_ssl() function:

$_SERVER['HTTPS'] = !empty( $_SERVER['HTTP_SSL'] ) ? $_SERVER['HTTP_SSL'] : 0;

So, do i need just add it somewhere or replace something?

#10 @nikitabasenko
10 years ago

Doesn't work with "main" page at menu + in page results.

Note: See TracTickets for help on using tickets.