カテゴリー: WordPress エラー

  • Search regex3.0.0でエラーが出る

    Search regex3.0.0に更新すると
    このサイトで重大なエラーが発生しました」というエラーになって
    WordPress管理画面が開けなくなった。 (さらに…)

  • Fatal error: Allowed memory size of n bytes exhausted

    WordPressを使っていて何らかの処理を実行中に
    Fatal error: Allowed memory size of ~ bytes exhausted
    というエラーが生じる原因と解消法についてのメモ。
    (さらに…)

  • Parse error: syntax error, unexpected T_FUNCTIONの原因

    WordPressのプラグイン「Wordpress popular post」を4.1.0にバージョンアップするとなぜか
    Parse error: syntax error, unexpected T_FUNCTION
    というエラーが出てしまい、調べました。

    このエラーが起きるのは、サーバーがPHP 5.3以上に対応してないのが原因。

    80code.comというレンタルサーバーを使っているブログですが
    管理画面でPHPのバージョンを変更可能だったので、5.3に切り替えたところ
    エラーは出なくなって、上記プラグインも問題なく動作しています。

  • エラーコード: -32300の解消法

    WordPressのJetpackというプラグインのShare機能を有効にし、
    設定→共有からTwitterを「連携」しようとすると
    エラーコード:-32300が出て連携が不可となりました。

    調べた所、その原因は以下のケースがあるようです。

    ・テーマや他のプラグインとの相性問題
    ・wordpress.comとの接続ができてない
    ・XMLRPCが動作していない

    テーマとの相性やプラグインとの相性を調べるのは手間なので後回しがいいです。

    wordpress.comと接続できてないケースでは以下のコマンド

    $_SERVER[‘SERVER_PORT’] = 80;

    wp-config.php

    に追記することで解消します。

    XMLRPCの動作を確かめるには、

    http://ドメイン/xmlrpc.php

    にアクセスしてみます。

    またはJetpackのデバッグページでドメインを入力して確かめます。

    https://jetpack.com/support/debug/

    正常に動作していれば
    「XML-RPC server accepts POST requests only.」
    というメッセージのみが一行で表示されます。

    403や404が表示される場合は動作していないので、
    xmlrpc.phpへのアクセスが遮断される設定になってないかを調べます。

    わからないならサーバー会社に問い合わせます。
    サーバーによっては海外からのアクセスを全て遮断する設定になっているので、
    海外からのアクセスを有効にする設定に変える必要があります。

    テーマとの相性問題ならテーマを切り替えます

    プラグインとの相性問題なら、
    一時的にJetpack以外のプラグインを停止し、
    Jetpackのみを有効にして実行してみます。

  • 現在メンテナンス中のため、しばらくの間ご利用いただけませんというエラーの解消法

    WordPress管理画面が突然
    「現在メンテナンス中のため、しばらくの間ご利用いただけません」
    というエラー表示となって何も出来なくなる白紙状態となるのは、
    プラグインやWordpress本体の更新時に、
    更新画面とは異なるページへ遷移してしまったのが原因。

    更新画面で更新が正常終了しないと、
    Wordpressをインストールしたディレクトリ直下に
    「.maintenance」
    というファイルがそのまま残り続けます。

    この.maintenanceが存在すると、
    Wordpressはいかなる管理画面へのアクセスも禁止します。

    よって、エラーの解消法としては、
    サーバー側の管理画面にアクセスし、
    Wordpessを入れたディレクトリの.maintenanceを削除します。

  • WordPressで500エラーに対応

    WordPressの管理画面を利用中に突然500エラーとなりました。

    500エラー以降は管理画面が白紙のまま何もできません。

    500エラーの原因として考えられるのは、

    ・.htaccessの設定ミス
    ・プラグインのエラー
    ・CGIのパーミッションミス
    ・CGIへの高負荷

    などがあります。

    .htaccessの内容がおかしいなら初期化するのも手。
    以下の記述が正当な.htaccessの記述なので食い違ってないか確認。

    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    # END WordPress

    食い違いがあるなら修正しますが、その前に念のためにバックアップを取っておきます。

    プラグインのインストールで新しい記述が.htaccessに追加される場合もあり、その記述を削除します。

    プラグインをインストールしたら500エラーとなったのなら、そのプラグインを削除すれば元通りになります。
    サーバーの管理画面かFTPで直に該当ディレクトリにアクセスしてプラグインを手動で削除します。

    CGIへの高負荷の場合、xmlrpc.phpへのブルートフォースアタックが原因かもしれません。
    サーバーのログを開いて(ダウンロードして)ログ内のxmlrpc.phpを検索し、
    大量に該当ログがあるならブルートフォースアタックが原因の可能性が濃厚です。
    この場合、xmlrpc.phpへのアクセスを遮断するのが対症療法としては有効。
    .htaccessに以下の記述を追加します。

    <Files xmlrpc.php>
    deny from all
    </Files>

    ただし、この方法だとあらゆるアクセスを禁じてしまうので自分のアクセスすらできなくなります。
    またコメントやトラックバックも使えなくなります。

    CGIのパーミッションミスは直接弄ってないなら起こりえないはず。
    644、707とか755だと思いますが、適切なパーミッションはサーバー毎に異なるので確認してください。