로컬 호스트에서 Wordpress 다중 사이트 "데이터베이스 연결 설정 오류"
WordPress를 다중 사이트 설정으로 변환하려고 하면 다음 오류가 표시됩니다.
데이터베이스 연결 설정 중 오류 발생
WAMP 서버가 설치된 Windows 7에서 WordPress 3.7.1을 사용하고 있습니다.
wp-config.php
define('WP_ALLOW_MULTISITE', true );
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'localhost');
define('PATH_CURRENT_SITE', '/wordpress_test4/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
.htaccess(접속)
RewriteEngine On
RewriteBase /wordpress_test4/
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]
여기에다가 돼요.wp-config.php
:
define('MULTISITE', true);
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ 은 이미 있기 했습니다.define('WP_ALLOW_MULTISITE', true);
'wp-config'는 'wp-config'입니다.
같은 문제가 발생하여 3가지 해결 방법을 찾았습니다.
DB_NAME
,DB_USER
,DB_PASSWORD
, , , , 입니다.DB_HOST
wp-config.config.config. . wp - wp - config - config 。php php php php php php php php php php php 。디마 L.이전에 언급했듯이
define('MULTISITE', true);
대됩니니다다이 하여 WordPress를 입니다.
wp_blogs
의 열path
내 웹사이트의 정의되지 않은 위치로 이동합니다.는 그것을 ㅇㅇㅇㅇㅇㅇㅇ로 요./
DB 연결이 다시 설정되었습니다.
나는 이 문제로 오랫동안 고생했다.그리고 마침내 해결책을 찾았다.
이러한 모든 설정을 wp-config.php 파일에 한 번에 추가해서는 안 됩니다.http://codex.wordpress.org/Create_A_Network 에 기재되어 있는 순서에 따라 주세요.
첫 번째 단계로 다음 코드만 추가하십시오.
/* Multisite */
define( 'WP_ALLOW_MULTISITE', true );
페이지를 새로 고칩니다.그런 다음 관리 패널에서 [툴(Tools)]-> [네트워크 셋업(Network Setup)]으로 이동하여 서브사이트 설정을 선택합니다.
그 외의 경우는, 위 링크의 순서를 사용해 주세요.
나는 얼마 전에 이상한 일을 만났다.다른 도메인에서 실행되는 개발 서버를 설정하고 다중 사이트 설정을 이동한 후 동일한 오류 "데이터베이스 연결을 설정하는 중 오류"가 발생했습니다.모든 wp_options 테이블이 각각의 설정에서 올바른 도메인을 가지고 있는지, 데이터베이스 접속이 올바른 credential을 가지고 있으며 정상적인 원주하에서 동작하는지 확인했습니다.
더 나은 오류 보고를 받을 수 있는 방법을 찾았습니다.함수의 dead_db() 함수에 데이터베이스 객체의 출력을 추가했습니다.php는 테이블 wp_displays에서 내 사이트의 블로그를 찾을 수 없음을 보여 줍니다.이 표에 있는 테스트 서버의 도메인을 업데이트하지 않았습니다.
function dead_db() {
global $wpdb;
echo "<pre>";
print_r($wpdb);
echo "</pre>";
wp_load_translations_early();
★★★DOMAIN_CURRENT_SITE
wp-config.php
define('DOMAIN_CURRENT_SITE', 'www.example.com');
「」의 삭제"http://
wp_compute -> wp wp wp wp wp wp wp wp wp wp wp wp wp wp wp wp wp wp wp.
$base = '/';을(를) 구성에 추가했더니 문제가 해결되었습니다.
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', true);
define('DOMAIN_CURRENT_SITE', 'mydomain.com');
$base = '/';
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
다중 사이트의 전체 데이터베이스 덤프를 가져온 경우 다음 표의 localhost 도메인과 일치하도록 도메인 이름을 변경해야 합니다.
- wp_domain [도메인 필드 갱신]
- wp_wp [사이트 및 홈]
- wp_site [도메인 필드]
멀티사이트의 경우 Configuration에서 WP_HOME 및 WP_SITEURL을 정의합니다.php는 동작하지 않습니다.
DB 덤프를 Import하기 전에 .sql 파일이 있는 경우 모든 도메인을 검색하여 자신의 localhost 도메인으로 바꿀 수 있습니다.
위의 단계들은 나에게 효과가 있었다.
위의 모든 것 외에 멀티 사이트 환경에서 작업할 경우 다음 사항을 확인하십시오.각 서브 디렉토리(/home/subsitename)에는 별도의 wp-config가 있습니다.php 및 .htaccess 파일은 각 (sub) 파일마다 존재하기 때문에 위의 파라미터는 이들 모든 파일에서 조정해야 합니다.예를 들어 /home 디렉토리의 파일이 정상이기 때문에 메인 사이트는 정상적으로 동작하고 있었습니다만, 서브 사이트에 액세스 하려고 하면, 이 파일도 조정할 때까지 데이터베이스 접속 에러 메세지가 표시됩니다.
wp_blogs
결과 그그,는domain
값이 여전히 잘못된 도메인을 가리키고 있습니다(멀티 사이트를 개발 서버로 이동 중)..UPDATE wp_blogs SET domain='example.com';
문제를 해결했습니다(서브도메인이 아닌 하위폴더 멀티사이트를 사용하고 있습니다.SQL " " " " " ) 。
WHMWHM/cPanel이 WHM/cPanel은 WHM/cPanel을 합니다.MULTISITE
/WP_ALLOW_MULTISITE
가상 호스트 문제가 발생할 수 있습니다.
데이터베이스 오류가 발생할 경우 네임 서버 또는 A 레코드가 정확할 수 있습니다.그렇지 않으면 도메인이 데이터베이스 연결을 사용하여 서버를 가리키지 않습니다.단, cPanel 에일리어스에서 도메인 이름을 잊어버렸거나 놓쳤을 수 있습니다.
cPanel로 이동하여 'Aliases'를 검색한 후 'Create a New Alias' 아래에 누락된 도메인 이름을 입력하십시오.
또한 WHM에 로그인하여 'List Accounts'를 검색하여 원하는 계정을 검색한 후 CP 아이콘을 클릭하여 cPanel에 접속할 수도 있습니다.
서브 디렉토리에서 루트 디렉토리로 멀티 사이트 이동 후 문제가 발생하였습니다.
이 문제를 해결한 것은 부분적으로 Sabin Chirila가 언급한 것이다.
- wp-config에서 DB_NAME, DB_USER, DB_PASSWORD 및 DB_HOST를 확인합니다.php는 실제로 예상된 것입니다.
- Dima L.이전에 언급했듯이 정의('MULTISE', true)도 필요합니다.
- 'wp_blogs' 테이블의 'path' 열을 '/'로 변경하면 DB 연결이 다시 설정되었습니다.
몇 가지 더 바꿔야 했어요
- 프런트엔드를 표시하기 위해 'wp_site' 테이블의 'path' 열을 '/'로 변경해야 했습니다.
- 그 후 (테마 207-child) 백엔드에서 일부 설정을 다시 설정해야 했습니다.이는 고려되지 않았기 때문입니다.하지만 데이터는 아직 존재하기 때문에 그것은 간단했다.
내가 고친 방법은 이렇다
구성 설정
define( 'MULTISITE', true );
define( 'SUBDOMAIN_INSTALL', false );
define( 'DOMAIN_CURRENT_SITE', 'localhost' );
define( 'PATH_CURRENT_SITE', '/myblog/' );
define( 'SITE_ID_CURRENT_SITE', 1 );
define( 'BLOG_ID_CURRENT_SITE', 1 );
다음으로 데이터베이스 테이블(phpmyadmin을 사용하여 검색)에서 wp_myadmin은 루트 블로그 값(거짓말/숫자 1)을 설정합니다.
domain localhost
root /myblog/
그리고 마지막으로 옵션테이블의 sitrurl과 홈페이지(phmyadmin을 사용하여 다시 검색)를 리셋합니다.
http://localhost/myblog/
언급URL : https://stackoverflow.com/questions/19724781/wordpress-multisite-error-establishing-a-database-connection-in-localhost
'programing' 카테고리의 다른 글
포맷 없이 JObject를 시리얼화하려면 어떻게 해야 합니까? (0) | 2023.04.01 |
---|---|
ng-model과 ng-value의 차이/비호환성은 무엇입니까? (0) | 2023.04.01 |
두 시간 간의 시간 차이(HH:MM:SS a) momentjs 단위 (0) | 2023.03.27 |
Angularjs Protractor에서 명령줄 인수를 사용하려면 어떻게 해야 합니까? (0) | 2023.03.27 |
jJSON을 문자열로 쿼리하시겠습니까? (0) | 2023.03.27 |