programing

WordPress 웹 사이트 마이그레이션 후 관리자에 액세스할 수 없음(흰색 페이지)

i4 2023. 3. 17. 19:36
반응형

WordPress 웹 사이트 마이그레이션 후 관리자에 액세스할 수 없음(흰색 페이지)

로컬 서버에서 온라인 서버로 WordPress 사이트를 이동하려고 합니다.

문제는 이행 후 관리 페이지(wp-admin)를 열려고 하면 흰색 페이지만 표시된다는 것입니다(http://scorejava.com/wordpress/wp-admin/).홈페이지(http://scorejava.com/wordpress/)에서는 그 외 모든 것이 정상적으로 동작하고 있는 것 같습니다.

웹 를 WP 폴더에 ./var/www/wordpress. 온라인 웹 서버의 루트 디렉토리에 있는 워드프레스 폴더로 이동했습니다.

또한 MySql을 사용하여 로컬 데이터베이스를 유일한 데이터베이스로 Import한 후 검색 및 WordPress 데이터베이스 스크립트를 사용하여 모든 데이터베이스를 자동으로 변경해야 합니다.http://localhost/wordpresshttp://scorejava.com/wordpress/을 사용하여 데이터베이스 테이블로 이동합니다.

사이트에 오류가 있습니다.무슨 일이 일어나고 있는지 확인해야 합니다.

WordPress URL

는 WordPress에 URL을 는 해당 수 . WordPress는 데이터베이스에 해당 정보를 저장하므로 이 정보가 익숙하다면 WordPress에서 올바른 항목을 찾을 수 있습니다.wp_options데이터베이스 내의 테이블과 그 값을 갱신합니다.

표준 WordPress 설치(사이트 URL이 WordPress 루트)에 대한 몇 가지 수정 사항을 보여드리지만 다른 값을 사용해야 할 수도 있습니다.home ★★★★★★★★★★★★★★★★★」siteurl른른른

SQL을 통한 URL 수정

관련 , 즉.이 필드들은 다음과 같습니다.wp_options서, 「」는option_namesiteurl ★★★★★★★★★★★★★★★★★」homephpmyadmin, mysql-workbench 。또한 다음 쿼리를 사용하여 URL을 자신의 것으로 변경할 수도 있습니다.

UPDATE `wp_options` SET `option_value`='http://www.myurl.com' WHERE `option_name` IN ('siteurl', 'home');

을 통한 wp-config.php

할 요.wp-config.php open (개방만 가능)wp-config.php행을 추가합니다.

// Site URLS (override DB settings)
define('WP_HOME','http://www.myurl.com');     //<-- NO TRAILING /
define('WP_SITEURL','http://www.myurl.com');  //<-- NO TRAILING /

물론 올바른 URL을 입력해야 합니다.

도 있고,그요.이러한 행을 에 추가한 후wp-config.php로그인하여 정상적으로 사이트를 사용할 수 있습니다.

WordPress 오류 디버깅 중

그러나 문제가 계속 발생하고 웹 사이트를 개발하는 동안 오류가 발생할 수 있습니다.서버 로그에서 오류에 대한 정보를 확인할 수 있지만, WordPress가 단순히 페이지에 오류를 표시하는 것이 더 편리할 수 있습니다. 표시를 , 을, 「에러 표시」, 「에러 표시」로 합니다.truewp-config.php.

define('WP_DEBUG', true);

WordPress는 WordPress를 사용합니다.을 「 「 」로해 주세요.false생산 현장에서 사용할 수 있습니다.

업업의 wp-config.php

이 파일은 워드프레스 설치 루트 디렉터리에 있습니다., 할 수 ( 를 참조).ssh또는 FTP 클라이언트를 사용하여 파일을 다운로드하고 텍스트에디터를 사용하여 변경한 후 파일을 다시 업로드합니다.

작업 중 파손될 경우에 대비하여 변경하기 전에 백업 복사본을 보관하는 것도 좋습니다.

레퍼런스

문서 페이지에서 WordPress 사이트 URL 변경에 대한 모든 내용을 읽을 수 있습니다.

파티에 늦었지만, 나는 최근에 이런 일을 겪었고, 나는 그 문제를 해결했다.이게 내가 한 일이야.

순서 1: 설정WP_DEBUG로로 합니다.true wp-config.php

2단계: 시도했다domain.com/wp-login.phpdomain.com/wp-admin, 적어도 할 수 .Warning: Cannot modify header information - headers already sent by

스텝 3: 추가했습니다.ob_start();wp-login.php을 잇다<?php물론 잠시동안 절 들여보내려고 말이죠

4단계: 이 방법은 성공했습니다.모든 플러그인을 비활성화하여 오류가 사라졌습니다.

순서 5: 모든 플러그인을 1개씩 활성화하여 에러의 원인이 되고 있는 플러그인을 특정하고, 특정 플러그인의 에러를 수정할 수 있도록 합니다.이전에 하나의 플러그인이 스타일을 추가했던 것처럼wp_enqueque_style그래서 함수로 설정해서 제대로 걸어놨어요.

도 있었다.deprecated수정할 것인지 대체 플러그인을 사용할 것인지 여부는 사용자에게 달려 있습니다.

And Don't forget to remove 그리고 빼는 거 잊지 마ob_start부에서wp_login.php파일. 코어 파일이 변경되지 않아야 합니다.파일. 코어 파일은 변경해서는 안 됩니다.

이게 나 같은 사람에게 도움이 됐으면 좋겠어.

WordPress 대시보드의 설정에는 "WordPress 주소(URL)"와 "사이트 주소(URL)"라는 두 개의 필드가 있습니다.이러한 설정은 웹 사이트의 "홈" 및 "사이트 URL" 설정이라고도 합니다.값은 실제 실행 중인 서버와 일치해야 합니다.

관리자에게 접근할 수 없는 경우 phpmyadmin을 사용하여 데이터베이스로 이동하여 wp_options 테이블과 관련된 필드를 검색하여 도메인이 반영되었는지 확인합니다.

대부분의 경우 충분할 겁니다.

저 자신도 몇 번 죽음의 하얀 화면과 싸웠습니다.Wordpress 지원 사이트의 스레드를 참조하여 몇 가지 제안을 수집하거나 구글에서 수많은 사람들의 이야기와 조언을 얻을 수 있습니다.나는 이것에 대해 신뢰할 수 있는 단 하나의 언급도 추천할 수 없다.

대부분의 경우, 분 우 감 백 마 해 생 으 하 of in most cases a itpace다발인니 my습 caused by공 was대후 after경였로 closing의부 whites?>장치 및 제품 서버 간의 새로운 라인 체계에 변경 때문에 소개된 태그는 일반적으로 플러그인에서 도입되었습니다.개발 서버와 운영 서버(일반적으로 플러그인) 간의 줄바꿈 스킴 변경으로 인해 도입된 태그입니다.

Wordpress를 디버깅모드로 하거나 Wordpress를 추가해 볼 수도 있습니다.error_reporting(E_ALL); ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★」/wp-admin/admin.php파일을 작성하여 힌트를 얻을 수 있는지 확인합니다.

저는 개인적으로 XCloner 플러그인을 사용하여 Win dev 머신과 *nix 프로덕션 서버 간에 전송함으로써 이러한 (터치 우드)를 피할 수 있었습니다.

wp-content/temes/active-teme-folder/function을 클릭합니다.php 및 이 코드를 바로 앞에 추가합니다.

<?php
define('WP_HOME','http://www.myurl.com');     //<-- NO TRAILING /
define('WP_SITEURL','http://www.myurl.com');

하다, 하다, 하다, 하다, 하다, 에 다음 .wp-config.php 일::

define('WP_HOME', 'http://' . $_SERVER['SERVER_NAME']);

define('WP_SITEURL', WP_HOME . '/');

wp-config.php 파일에 행 편집 중지 바로 위에 다음 행을 추가합니다.

define('RELOCATE',true);
/* That's all, stop editing! Happy blogging. */

그런 다음 로그인 URL로 이동하여 페이지를 새로 고친 후 로그인합니다.중요: 로그인 할 수 있는 경우는, 전에 ROUTE 행을 삭제해 주세요.다음으로 이동합니다.

Settings > General

Wordpress URL 및 사이트 주소를 올바른 위치로 설정합니다.

WordPress Address (URL): http://example.com/wordpress

Site Address (URL): http://example.com/myblog

"저장"을 누릅니다.

많은 경우 파일을 다른 서버로 이행할 때 이 문제는 단순히 PHP 파일 중 하나의 사소한 오류로 인해 발생합니다.에러는 종료 후에 추가 문자입니까?> 파일내의 PHP 태그.이것들은 단순한 공백이나 반환일 수도 있지만 종종 죽음의 흰막의 원인이 될 수도 있다.

주된 원인은 기능입니다.php 파일을 WordPress 테마에 저장합니다.플레인 텍스트파일 에디터(대부분의 호스팅 계정에서 사용 가능)에서 참조하고 닫힘 태그 뒤에 있는 행을 삭제합니다.

이 파일에 없는 경우 오류 보고를 사용하여 범인 파일을 식별하면 플러그인 또는 테마에 있는 다른 파일에 있을 수 있습니다.

Jon Surrell enable error display에서 설명한 바와 같이 wp-config.php에서 다음 설정을 true로 변경합니다.

define('WP_DEBUG', true);

로컬 서버로 이행한 후에도 같은 문제가 발생하였습니다.데이터베이스에 하드코드된 파일 경로가 많아 첫 번째 시도가 실패했습니다.그래서 다시 시도해보니 라이브 서버와 동일한 경로와 동일한 호스트 이름과 데이터 이름을 생성하도록 주의했습니다.현재 웹사이트는 좋았지만 wp-login은 흰색 화면을 주었습니다.

wp-debug를 사용하면 이 문제가 wp-super-cache 플러그인에 의해 발생한다는 것을 알 수 있습니다.이 플러그인은 설정에 풀 파일 패스가 하드 코드 되어 있습니다.php 이 경로를 완전한 로컬 경로로 변경하면 문제가 없습니다.

이게 제가 평소에 하는 순서입니다.

  1. 파일 및 데이터베이스를 업로드합니다.
  2. 올바른 파일 권한을 설정합니다.
  3. wp-config.php 파일의 데이터베이스 설정을 서버 DB 로그인과 일치하도록 업데이트합니다.
  4. 「 」를 합니다.wp_options「URL」 「URL」 「URL」 「URL」 「URL.
  5. 것이 잘 , 「」를 할 수 .wp-login.phpurl로 합니다.
  6. 하면 permalinks가 됩니다..htaccess 쓰기 경우 ftp.file을 할 수 있습니다. 쓰기 권한이 없는 경우 ftp를 통해 파일을 복사하고 편집할 수 있습니다.
  7. 으로, 「URL」, 「URL」이라고 하는 이름의 으로, 할 수 .velvet urls 오랜 세월 사용.데이터베이스의 다른 모든 URL이 업데이트됩니다.

모든 것이 올바르게 진행된다면 이 모든 절차로 충분할 것이다.

공백 페이지 등의 메시지가 뜨면 오류 보고서를 켜고 wp 구성 파일 자체에서 로그를 쓸 수 있습니다.이 중 몇 가지를 디버깅할 수 있습니다.

  1. 폴더에서 플러그인을 하나씩 제거하기만 하면 됩니다.
  2. 사용하고 있는 커스텀 테마를 삭제합니다.

코어 파일을 대부분 편집하지 않으면 문제가 해결됩니다.다른 유일한 기회는 이행 중에 주의할 필요가 있는 php 또는 mysql 버전 불일치입니다.이게 도움이 됐으면 좋겠네요.

이 대답을 싸움에 덧붙입니다. 다른 사람에게 도움이 될 수 있다는 희망에서요.나는 위의 모든 조언을 따랐지만 소용이 없었다.관리자가 패널에 접근할 수 있도록 하기 위해 PHP 파일을 해킹해야 했습니다.패널을 통해 관리자 계정에 관리자 역할이 할당되어 있지 않음을 알 수 있습니다.

이것은 "wp-includes/capabilities.php"에 대한 저의 해킹입니다.

function current_user_can( $capability ) {
    $current_user = wp_get_current_user();

    if ( empty( $current_user ) ) {
        return false;
    }

return true;  // HACK to get superuser power to any logged in user

    $args = array_slice( func_get_args(), 1 );
    $args = array_merge( array( $capability ), $args );

    return call_user_func_array( array( $current_user, 'has_cap' ), $args );
}    

이것에 의해, 관리자 패널이 표시되고, https://example.com/wp-admin/users.php 에 액세스 할 수 있게 되어, 그 역할을 할당할 수 있게 되었습니다.그런 다음 기능을 풀었습니다."관리자"가 할당되었으므로 모든 사용자가 올바른 권한을 가지고 있는지 확인할 수 있습니다.

모두들.며칠 전에 BlogVault를 사용하여 WordPress 멀티 사이트 인스턴스를 이식했습니다.과정은 순조롭게 진행되었고 사이트는 필요에 따라 작동했습니다.그러나 콘솔에 접속할 수 없어 항상 "브라우저가 쿠키를 지원하지 않습니다. 쿠키를 활성화하고 다시 시도하십시오."라는 오류가 나타납니다.며칠 동안 조사해보니 "wp_options" 페이지 코드의 입력으로 인해 오류가 발생한다는 것을 알게 되었습니다.

원래 사이트에서는 이 선을 사용합니다.

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

그러나 새 서버는 회선을 사용합니다.

define ('COOKIE_DOMAIN', mydomain.com);"

코드 행을 교환하면 문제가 해결.누군가에게 도움이 되길 바랍니다.)

늦은 리플레이일 수도 있지만, 다른 사람에게 도움이 되길 바랍니다.

제 경우, 이 문제를 해결하기 위해 사용한 단계가 여기에 나와 있습니다.

  1. wp-config.php WordPress를 합니다.define('WP_DEBUG', true);거짓이 아니라.
  2. 새 서버의 프로젝트 루트에 동일한 파일을 업로드합니다.
  3. www.yourDomain.com/wp-admin과 같이 이전과 동일하게 로그인 시도 - 백엔드 관리자에 로그인할 수 있기를 바랍니다.
  4. settings -> Permalinks - common settings - 로 이동합니다.옵션 버튼을 선택합니다.planSAVE 버튼을 선택합니다.day and name다시 저장, 저장을 클릭하는 것을 잊지 말고 도메인을 되찾고 사이트를 확인하면 내부 페이지는 완벽하게 작동합니다.
  5. wp-config.php거짓
  6. 바로 그겁니다.

저는 워드프레스 개발자는 아니지만, 위의 솔루션은 저에게 딱 맞는 솔루션이었고, 제대로 된 설명을 어디서도 찾을 수 없었습니다.

언급URL : https://stackoverflow.com/questions/15557718/after-migration-of-wordpress-website-i-cant-access-the-admin-white-page

반응형