web-dev-qa-db-ja.com

1人で2人の異なるDBユーザーを使用する WP インストール

問題のWPサイトがフロントエンドおよびプラグインを介してハッキングされる可能性があるため、次のことが可能かどうかに興味があります。

  1. フロントエンドに読み取り専用DBユーザーを介して接続させたい
  2. 管理領域に読み取り/書き込みアクセス権を持たせ、このURLは内部トラフィックのみを許可するサーバーファイアウォールルールによって保護する必要があります。

私は他の提案を受け入れています

1
Daniel

私はWPインスタンスを2つの異なるデータベースで設定しました。1つは読み取り専用、もう1つは管理用です。

しかし、管理者が変更を加えたら、ADMIN-DBをコピーしてSLAVE-DBサーバーに追加する必要があります。

// check if url contains wp-login or wp-admin and then create DB configuration for Master DB else Slave DB.
$url = "http://".$_SERVER['HTTP_Host'].$_SERVER['REQUEST_URI'];
if ( false !== strpos( $url, 'wp-admin' ) || false !== strpos( $url, 'wp-login' ) ) {
    define( 'DB_NAME', 'SLAVE_DB_NAME' );
    define( 'DB_USER', 'SLAVE_DB_USER' );
    define( 'DB_PASSWORD', 'SLAVE_DB_PASSWORD' );
    define( 'DB_Host', 'SLAVE_DB_Host' );
} else {
    define( 'DB_NAME', 'MASTER_DB_NAME' );
    define( 'DB_USER', 'MASTER_DB_USER' );
    define( 'DB_PASSWORD', 'MASTER_DB_PASSWORD' );
    define( 'DB_Host', 'MASTER_DB_Host' );

}
3
Aftab