WordPress.org

Make WordPress Core

Opened 5 years ago

Last modified 3 months ago

#9873 new defect (bug)

enforce a consistent home and siteurl www. pref

Reported by: Denis-de-Bernardy Owned by:
Milestone: Future Release Priority: normal
Severity: normal Version: 2.8
Component: Users Keywords: has-patch
Focuses: Cc:

Description

Seen on a few sites. home and siteurl with inconsistent www prefs prevents the admin user's cookie from getting picked up properly, upon logging in.

code I currently use to prevent the issue is this:

add_action('login_head', 'fix_www_pref');

function fix_www_pref() {
	$home_url = get_option('home');
	$site_url = get_option('siteurl');
		
	$home_www = strpos($home_url, '://www.') !== false;
	$site_www = strpos($site_url, '://www.') !== false;
		
	if ( $home_www != $site_www ) {
		if ( $home_www )
			$site_url = str_replace('://', '://www.', $site_url);
		else
			$site_url = str_replace('://www.', '://', $site_url);
		update_option('site_url', $site_url);
	}
} # fix_www_pref()

there's probably a better way and a better location for this.

Attachments (2)

options.php.diff (1.4 KB) - added by norcross 2 years ago.
catch $_POST values for urls and check / replace if needed
9873.patch (754 bytes) - added by johnpbloch 8 months ago.
Explicit COOKIE_DOMAIN for www inconsistency

Download all attachments as: .zip

Change History (15)

comment:1 Denis-de-Bernardy5 years ago

  • Milestone changed from 2.8 to Future Release

punting pending patch

comment:2 Denis-de-Bernardy5 years ago

see also #10095 (closed issue), which highlights a side-effect

comment:3 Denis-de-Bernardy5 years ago

see also #10447 for more potential side effects

comment:4 hakre4 years ago

Related: #10970

comment:5 scribu4 years ago

Related: #11945

comment:6 mikeschinkel4 years ago

  • Cc mikeschinkel@… added

comment:7 nacin2 years ago

Closed #20430 as a duplicate.

comment:8 SergeyBiryukov2 years ago

Crops up on support forums once in a while.

norcross2 years ago

catch $_POST values for urls and check / replace if needed

comment:9 norcross2 years ago

  • Cc andrew@… added
  • Keywords has-patch added
  • Type changed from enhancement to defect (bug)
  • Version changed from 2.8 to 3.4

comment:10 helenyhou2 years ago

  • Version changed from 3.4 to 2.8

Version number indicates when the bug was initially introduced/reported.

comment:11 Ipstenu2 years ago

  • Cc ipstenu@… added

johnpbloch8 months ago

Explicit COOKIE_DOMAIN for www inconsistency

comment:12 johnpbloch8 months ago

  • Cc johnpbloch@… added

It seems to me that overriding a user's chosen preference in the options table is the wrong way to fix this bug. Since the problem is that it causes inconsistencies in cookie behavior, it makes more sense to me to fix this issue by forcing a value for COOKIE_DOMAIN if a www. inconsistency is detected.

comment:13 ircbot3 months ago

This ticket was mentioned in IRC in #wordpress-dev by ipstenu. View the logs.

Note: See TracTickets for help on using tickets.