20

私はWordpressに取り組んでおり、プロジェクトをローカルで完了しました。次に、それをライブサーバーに移動しましたが、何も変更しませんでした。構成ファイル(データベース名、ユーザー名、パスワード)を変更しただけです。

現在、私のサイトはフロントエンドで正常に動作していますが、毎回エラー メッセージが表示されるため、管理パネルにアクセスできません。

このページにアクセスするための十分な権限がありません。

Google 検索では、ほとんどのエラーはプレフィックスの変更が原因で発生したことが示されていますが、私の場合はローカルと同じです。また、私のディレクトリのパーミッションは 755 で、ファイルのパーミッションは 644 ですが、それでも同じ問題に直面しています。

これを修正するにはどうすればよいですか?

4

2 に答える 2

93

データベーステーブルのプレフィックスを変更しましたか?これがあなたの問題だと私は90%確信しています。

WordPressは$table_prefix、オプションとusermetaキーの名前を形成するために変数を使用し、役割と機能の情報を格納します。したがって、プレフィックスを変更してもデータベースを更新しないと、このエラーが発生します。これを修正する方法は次のとおりです。phpMyAdminまたはDBと対話するための別のインターフェイスを介してこのSQLコマンドを実行します(PHPでも実行できます)。

UPDATE `{%TABLE_PREFIX%}usermeta` SET `meta_key` = replace(`meta_key`, '{%OLD_TABLE_PREFIX%}', '{%NEW_TABLE_PREFIX%}');
UPDATE `{%TABLE_PREFIX%}options` SET `option_name` = replace(`option_name`, '{%OLD_TABLE_PREFIX%}', '{%NEW_TABLE_PREFIX%}');

どこ:

  • {%TABLE_PREFIX%}現在の$table_prefix(で設定されているwp-config.php
  • {%OLD_TABLE_PREFIX%}あなたの前です$table_prefix
  • {%NEW_TABLE_PREFIX%}はあなたの新しい(現在の)です$table_prefix-それはおそらくあなたと同じでしょう{%TABLE_PREFIX%}

したがって、古いものと新しいものが$table_prefixである場合は、次のクエリを実行します。wp_test_wp_

UPDATE `wp_usermeta` SET `meta_key` = replace(`meta_key`, 'wp_test_', 'wp_');
UPDATE `wp_options` SET `option_name` = replace(`option_name`, 'wp_test_', 'wp_');

編集:@Francisco Corralesが指摘したように、作成した管理ページへのアクセスに問題がある場合(PHPを作成していない場合、これは当てはまりません)、次のリンクを確認できます:プラグインの開発中のWordpressエラー- 「このページにアクセスするための十分な権限がありません。」


編集2:@Kasper Sourenが指摘したように、オプションのUPDATEクエリにWHERE句を追加することをお勧めします。%そのように(最後の後に削除しないでください%}):

UPDATE `{%TABLE_PREFIX%}options` SET `option_name` = replace(`option_name`, '{%OLD_TABLE_PREFIX%}', '{%NEW_TABLE_PREFIX%}') WHERE option_name like '{%OLD_TABLE_PREFIX%}%';
于 2012-12-11T07:58:37.297 に答える
-2

あなたの問題は、ディレクトリに対する許可ではありません。「このページにアクセスするための十分な権限がありません」というメッセージが表示されるという事実は、次の 3 つのことを意味します。

  1. 管理ページに直接アクセスしようとしていますが、wp-admin 経由ではありません (アクセスしようとしている管理ページを示してください)。

  2. すでにログインしている (ログインしていない場合、/wp-admin にリダイレクトされます) および

  3. アクセスしようとしている領域は、より高いレベルのユーザー用に予約されています (その領域には管理者しかアクセスできないのに、編集者アカウントで接続している可能性があります)。

ローカル データベースとオンライン データベースが同じか教えていただけますか? このメッセージが表示される前に、正しくログインできますか?

于 2012-12-11T07:51:47.293 に答える