WordPress お役立ち情報

GandiでのWordPress利用に際して役に立つ情報を記載しています。

500 Internal Server Error (内部サーバーエラー)

このエラーは一般的にウェブサイトのコードに問題がある場合に発生し、表示されるページは真っ白で何も表示されません。WordPressサイトでこの500エラーが表示される場合、通常WordPressプラグインかテーマが原因が一般的です。

何が問題の原因になっているかを判断するために、インスタンスのコントロールパネルに移動し し、PHPエラーログの内容を確認することが可能です。(www-error.log)

エラーは以下のように表示されます:

PHP Fatal error: Class 'WP_Customize_Section' not found in /srv/data/web/vhosts/www.exemple.tld/htdocs/wp-content/themes/easy-store/inc/customizer/es-custom-classes.php on line 341

ウェブサイトに再度アクセスできるようにするために、WordPressの管理ページから問題を引き起こしているテーマやプラグインを無効化する必要があります。

管理ページにアクセスできない場合、sFTPを使用してインスタンスにログインしてください 。 その後問題を引き起こしているプラグインやテーマを無効化するために、そのプラグインディレクトリまたはテーマディレクトリの名前を別の名前に変更してください。/htdocs/wp-content/themes または /htdocs/wp-content/plugins ディレクトリになります。

混在コンテンツ(http と https)

httpsをウェブサイトで使用できるようにした場合 、緑色の鍵アイコンがブラウザのアドレスバー部分に表示されます。しかし表示されない場合は、ウェブサイト内の画像などのコンテンツがhttpで読み込まれている可能性があります。

以下を確認してください。

  1. ブラウザでデベロッパーツールを開いてください (F12キーを押すか、右クリックして検証をクリック)
  2. ツールが調べたいページ上で表示されます
  3. 「コンソール」をクリックしてください

問題の原因になっているリンクを見つけたら、httpsを使用するように編集してください。

注釈

確認する要素がたくさんある場合は問題解決のためのプラグインを使用することもできます: SSL Insecure Content Fixer

ウェブサイト移管

シンプルホスティングのインスタンスにはテスト用のURLを使用することが可能です。このテスト用URLを使ってウェブサイトの使用を開始し、後で自分登録したドメイン名を使用したい場合、"Duplicator" を使用すると便利です。

このプラグインを使用すると、ウェブサイトのアドレス(URL)をWordPressの管理ページとデータベース上で変更することができます。

XML-RPC

セキュリティ上の対策として、WordPressのルートディレクトリ(htdocsディレクトリ)に.htaccessファイルをアップロードし、ファイル内に以下の内容を書き込んでおくことを推奨しています。

RewriteRule ^xmlrpc\.php$ "http\:\/\/0\.0\.0\.0\/" [R=301,L]

こうすることによって、このファイルを対象にした接続の全ては拒否され、Wordressを踏み台にしたPingback攻撃を防ぐことが可能になります。

詳細な情報はこちらからご確認ください(英語): https://www.trustwave.com/Resources/SpiderLabs-Blog/WordPress-XML-RPC-PingBack-Vulnerability-Analysis/

このようなサイバー攻撃の標的になっている可能性がある場合は、Apache access.log ファイルを確認してください。攻撃があった場合そのログファイルの中で大量のリクエストが以下のように表示されます。

POST /xmlrpc.php HTTP/1.1" 200 56775 "-" "-"

キャッシュプラグイン

パフォーマンス向上のためにGandiのシンプルホスティングでは既に 専用のキャッシュシステム を使用しているため、WordPressのキャッシュ関連のプラグインの使用はお薦めしていません。キャッシュ関連プラグインを使用するとインスタンスで無駄なリソースを使用することになります。

wp-cliのインストール

シンプルホスティングのディレクトリにアクセス権限は付与されませんが、エイリアスを使用することができます。

はじめにSSHコンソールを有効化し、接続する必要があります。

その後以下のコマンドを実行してください。

$ cd /srv/data/home
$ wget https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
$ echo "alias wp='/srv/data/home/wp-cli.phar'" >> /srv/data/etc/bash/bashrc

CTRL-Dを押して現在のセッションから抜けた後、その後エンターを押して新しいセッションを開始してください。以下をテストしてください。

$ wp --info