로그인 할 수 없습니다 :“오류 : 브라우저에서 쿠키가 차단되었거나 지원되지 않습니다. WordPress를 사용하려면 쿠키를 활성화해야합니다. "


14

서버 이동 후 내 사이트에 로그인 할 수 없습니다. "오류 : 브라우저에서 쿠키가 차단되었거나 지원되지 않습니다. WordPress를 사용하려면 쿠키를 활성화해야합니다." 로그인 양식을 제출하려고 할 때 오류가 발생했습니다.

브라우저가 쿠키를 지원하고 차단되지 않았다고 확신합니다.

나는 이것을 철저히 연구하고 내가 찾은 모든 제안을 시도했다.

  • 플러그인 디렉토리 이름 변경
  • 사이트 테마 디렉토리 이름 변경
  • 데이터베이스에서 이전 URL의 인스턴스를 검색하고 새 URL로 대체했습니다.
  • 최신 버전 (4.0)으로 WordPress 업데이트
  • wp-config.php에 정의 된 WP_HOME 및 WP_SITEURL
  • wp-config.php에서 ADMIN_COOKIE_PATH, COOKIE_DOMAIN, COOKIEPATH 및 SITECOOKIEPATH를 설정하십시오.

    define('ADMIN_COOKIE_PATH', '/');
    define('COOKIE_DOMAIN', '');
    define('COOKIEPATH', '');
    define('SITECOOKIEPATH', '');
  • wp-login.php 에이 해킹을 시도했습니다 : https://wordpress.org/support/topic/cookies-are-blocked-or-not-supported-by-your-browser-1#post-5026171

로컬 설치시 사이트에 로그인 할 수 있고 dev 서버의 사이트에 로그인 할 수 있습니다. 어떤 아이디어가 이것을 일으킬 수 있습니까?


1
로그인 페이지의 HTML 소스를보십시오. 초기 DOCTYPE 줄 이전에 어떤 것이 있습니까? 빈 줄이라도? 그렇다면 헤더를 작성하기 전에 출력을 작성하는 코드가 있으므로 쿠키를 설정하지 못하게됩니다.
Otto

2
이는 Wordpress가 관리자 로그인을 위해 암호화 된 채널에 대해 $ secure_cookie 제어를 시행하기 때문입니다. SSL / TLS를 적용하도록 웹 서버를 재구성하십시오. KR

WordPress MU를 사용하는 경우 설정에서 도메인 목록에 도메인을 추가하면 문제가 해결 될 수 있습니다.
Mahdi Taghizadeh

2
이것이 나를 위해 일한 것입니다 : http를 https ( 's'추가) 및 voila로 변경했습니다. 더 이상 쿠키 문제가 없습니다.
죄수 13

@MahdiTaghizadeh-자세한 내용을 설명해 주시겠습니까?
Greeso

답변:


26

/ * 전에 wp-config.php에 아래 줄을 추가하십시오.

 define('COOKIE_DOMAIN', $_SERVER['HTTP_HOST'] );

/* That's all, stop editing! Happy blogging. */

1
이 솔루션은 다중 사이트 설치에서도 효과적이었습니다. 기본 사이트에 로그인 할 수 있었지만 보조 사이트에는 로그인 할 수 없었습니다.
Be.St.

@ Be.St., 시도define('COOKIE_DOMAIN', '');
Steve

1
이것은 나에게 즉시 작동하지는 않았지만 하드 새로 고침 (크롬에서 Ctrl + F5)
Dave

4

니스였습니다.

우리 웹 호스트는 Drupal 고유의 방식으로 Varnish를 설정했으며 WordPress가 로그인을 처리하는 데 사용하는 쿠키를 필터링했습니다.


1
필자의 경우 쿠키를 차단 한 것은 AWS CloudFront였습니다.
Mantas

나는 비 보안 sitehttp에 이것을보고 : //하지만 HTTPS를 사용하는 경우 나를 위해 모든 것을 작동 : //
CrandellWS

1

나는이 쿠키 문제를 없애기 위해 모든 방법을 시도해 보았습니다. 마지막으로 두 가지 해결책을 찾았습니다.

해결책 1 :

yoursite / wp-login.php

다음 줄 댓글 770-773

암호

if ( isset($_POST['testcookie']) && empty($_COOKIE[TEST_COOKIE]) )
    $user = new WP_Error('test_cookie', __("<strong>ERROR</strong>: Cookies are blocked or not supported by your browser. You must <a href='http://www.google.com/cookies.html'>enable cookies</a> to use WordPress."));
else
    $user = wp_signon('', $secure_cookie);

일부 웹 사이트에서는 작동하며 일부 사이트에는 빈 페이지가 표시 될 수 있습니다. 또한,이 파일은 워드 프레스 업데이트 후에 재정의 될 수 있으므로 두 번째 해결 방법을 시도하기 때문에 권장하지 않습니다.

해결책 2 :

yoursite / wp-content / themes / yourthemeFolder / functions.php

다음 코드를 배치하십시오.

 setcookie(TEST_COOKIE, 'WP Cookie check', 0, COOKIEPATH, COOKIE_DOMAIN);
if ( SITECOOKIEPATH != COOKIEPATH )
    setcookie(TEST_COOKIE, 'WP Cookie check', 0, SITECOOKIEPATH, COOKIE_DOMAIN);

테마를 업데이트하면 이러한 변경 사항이 풀릴 수 있으므로이 코드를 현재 활성화 된 테마의 하위 테마 폴더에있는 다른 functions.php에 배치하십시오. 희망이 도움이 될 것입니다.


2
이것들은 실제로 해결책입니다. 해결 방법과 비슷하지만 영구적으로 사용하기에는 이상적이지 않습니다.
Jake

코어 편집이 올바른 조치가 아니므로 "솔루션"1의 경우 -1입니다. 2는 작동하지만 문제를 식별하지 못합니다.
제레미

1

나는 또한 최근 에이 문제를 겪었지만 도메인 이름이 웹 사이트를 가리키고 있었지만 워드 프레스 멀티 사이트에는 데이터베이스에 도메인 이름을 올바른 블로그에 매핑하는 레코드가 없으므로 워드 프레스를 설정하려고했을 때 쿠키에서 매핑 된 도메인 대신 하위 도메인의 쿠키를 설정했습니다.


이것은 나를 위해 일했습니다. 도메인 매핑에 wordpress.org/plugins/wordpress-mu-domain-mapping 을 사용 하고 있으며 매핑 레코드를 추가하자마자 "오류 : 쿠키가 쿠키가 차단되었거나 브라우저에서 지원되지 않습니다"라는 오류가 발생하지 않았습니다.
lee_mcmullen

-1

wpdevramki가 제공 한 솔루션을 구현했으며 다음 문제가 발생할 수 있음을 알았습니다.

"주의 사항 : 상수 COOKIE_DOMAIN은 102 행의 /wp-config.php에 이미 정의되어 있습니다"

이 문제를 해결하려면 wp-includes / default-contants.php에서 다음 코드를 주석 처리하십시오.

if ( !defined('COOKIE_DOMAIN') )
    define('COOKIE_DOMAIN', false);

3
핵심 코드를 수정하지 마십시오!
제레미
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.