パーマリンクが壊れたWordPress

WordPressで壊れたパーマリンクを修正する方法

· 14 min read ·
Written By: 著者アバター Joella Dunn
著者アバター Joella Dunn
Joella is a writer with years of experience in WordPress. At Duplicator, she specializes in site maintenance — from basic backups to large-scale migrations. Her ultimate goal is to make sure your WordPress website is safe and ready for growth.
·
Reviewed By: レビュアーアバター John Turner
レビュアーアバター John Turner
John Turner is the President of Duplicator. He has over 20+ years of business and development experience and his plugins have been downloaded over 25 million times.

クライアントのサイトに初めてログインしたとき、404エラーしか表示されなかったのを今でも覚えています。すべてのページが消えてしまったかのようでした。少なくとも、そう見えたのです。

パーマリンクの破損は、WordPressで最もよくある問題の1つであり、実際よりも悪く見えることがほとんどです。

この記事では、最も簡単な修正から始めて、より技術的な内容に進みながら、壊れたパーマリンクを修正する方法を説明します。

ほとんどの場合、5分以内に解決できます!

主なポイントは次のとおりです:

  • パーマリンクが壊れると、すべての投稿やページが404エラーを返します。
  • コンテンツはデータベースに安全に残っていますが、WordPressがトラフィックを正しくルーティングできません。
  • 一般的な原因としては、プラグインの競合、サイトの移行、.htaccessファイルの破損、不適切なファイル権限などが挙げられます。
  • 最も簡単な修正方法:設定 » パーマリンクに移動し、何も変更せずに「変更を保存」をクリックします。
  • 修正を試みた後は、必ずすべてのキャッシュをクリアしてください。ブラウザキャッシュ、プラグインキャッシュ、サーバーキャッシュ、CDNキャッシュなどです。
  • 簡単な修正でうまくいかない場合は、すべてを無効化してテストし、プラグイン/テーマの競合を確認してください。
  • 更新にはステージングサイトを使用し、公開後にパーマリンク構造を変更せず、定期的なバックアップを維持することで、将来の問題を防ぎます。

目次

パーマリンクとは、投稿やページの永続的なURL構造のことです。誰かがあなたのコンテンツを訪問したときに、ブラウザのアドレスバーに表示されるものです。

WordPressでは、これらのURLの表示方法について、主に2つのオプションがあります。

最初のオプションは、私が「醜い」パーマリンクと呼ぶものです。次のような表示になります:https://yoursite.com/?p=123。技術的には問題なく機能しますが、人間にとっても検索エンジンにとっても最悪です。

2番目のオプションは「わかりやすい」パーマリンクです。次のような表示になります:https://yoursite.com/how-to-fix-broken-links/。明確でキーワードが豊富なURLは、ランダムな数字の羅列よりもパフォーマンスが向上します。

わかりやすいパーマリンクが重要な理由は2つあります。

  • 訪問者は、クリックする前にページの内容を理解することができます。
  • Googleなどの検索エンジンは、URL構造をランキングシグナルとして使用します。

「壊れたパーマリンク」と言うとき、それはWordPressがこれらのわかりやすいURLを突然処理できなくなった場合を指します。

コンテンツはデータベースにまだ存在しています。WordPressがトラフィックを正しくルーティングできないため、代わりにすべてのページが404エラーを返します。

症状は通常、非常に明白です。ホームページは正常に読み込まれますが、個々の投稿やページはすべて404エラーを返します。内部リンクをクリックすると、コンテンツの代わりに「ページが見つかりません」というメッセージが表示されます。

WordPressの管理ダッシュボードは正常に機能します。ログインして、バックエンドですべての投稿やページを確認でき、そこではすべて正常に見えます。しかし、フロントエンドではどうでしょうか?404エラーしか表示されません。

特定の操作、例えばサイトの移行、プラグインの更新、サーバー設定の変更などの直後に、これがすぐに発生することがあります。他の場合は、どこからともなく発生するように見えます。

これは、ランダムなURLが1つか2つだけではなく、すべての投稿とページに一度に影響します。それが、単なるリンク切れではなく、パーマリンクの問題であるとわかる方法です。

パーマリンクの破損はランダムに発生するわけではありません。ほぼ必ず特定のトリガーがあります。

プラグインまたはテーマの競合

新しいプラグインやテーマが、WordPressのURL書き換えルールを壊すことがあります。

以前、セキュリティプラグインをインストールしたところ、サイト上のすべてのリンクが即座に壊れてしまいました。そのプラグインは独自の書き換えルールを追加しようとして、WordPressのコアルールを上書きしてしまったのです。

これは、あなたが思うよりも頻繁に発生します。特にリダイレクト、キャッシュ、またはセキュリティ機能を処理するプラグインでよく見られます。

サイトの移行または復元

サイトをあるサーバーから別のサーバーに移動すると、パーマリンクの仕組みを制御する.htaccessファイルが常に正しく転送されるとは限りません。サーバーはそれぞれ異なる設定を持っており、古いホストで機能したものが新しいホストで機能しない場合があります。

.htaccessファイルの破損

.htaccessファイルはWordPressのルートディレクトリにあり、URLの処理方法をサーバーに指示します。

プラグインがこのファイルを編集してパーマリンクの破損を直接引き起こすことがあります。また、手動での変更がうまくいかない場合もあります。

いずれにしても、そのファイル内の書き換えルールが破損または削除されると、パーマリンクが機能しなくなります。

SSL/HTTPSの問題

最近SSL証明書を追加して、サイトをHTTPSに切り替えた場合、リダイレクトループや混合コンテンツの問題が発生している可能性があります。これらはパーマリンクの破損のように見えますが、根本原因は異なります。

WordPressのパーマリンクの破損を修正するための最良の方法を以下に示します。

  • パーマリンクをリセットする(設定 » パーマリンク » 変更を保存)
  • すべてのキャッシュをクリアする(ブラウザ、プラグイン、サーバー、CDN)
  • プラグインを無効化し、テーマを切り替えて競合を見つける
  • .htaccessファイルのパーミッションを確認する(644であるべきです)
  • サーバー設定を確認する(Apacheでmod_rewriteが有効になっているか)
  • SSL設定が「設定 » 一般」と一致しているか確認する
  • 必要に応じて.htaccessファイルを再生成する
  • 複雑な問題の場合は、ホスティングサポートまたはWordPressの専門家に連絡する

WordPressには、ダッシュボードを通じてパーマリンクの破損を修正するための組み込みの方法があります。パーマリンク設定を再度保存することで、WordPressが.htaccessファイルを再生成します。

この修正はほとんどの場合で機能し、30秒もかかりません。私はこれを何十回も使用しましたが、魔法のように感じることは決してありません。

WordPress管理ダッシュボードにログインし、**設定 » パーマリンク**に移動します。何も変更しないでください。下にスクロールして、**変更を保存**ボタンをクリックするだけです。

WordPressパーマリンク

WordPressは、新しい書き換えルールで.htaccessファイルを再生成します。設定を変更していなくても、保存する行為によってWordPressはこれらのルールを最初から書き直すことになります。

10回中9回は、この時点でサイトが修正されます。それでも解決しない場合は、読み進めてください。

キャッシュのクリア

パーマリンクのリセットが機能しなかったと決めつける前に、サイトのキャッシュをすべてクリアしてください。

ブラウザのキャッシュから始めましょう。Chromeでは、3つの点のアイコンをクリックし、「閲覧履歴データの削除」を選択します。

Chrome閲覧データを削除する

キャッシュされた画像とファイル」を選択し、「データを削除」をクリックします。

Chromeキャッシュをクリアする

次にキャッシュプラグインをクリアします。WP Rocket、W3 Total Cache、またはその他のキャッシュプラグインを使用している場合は、WordPress管理バーまたはプラグイン設定にある「キャッシュをクリア」ボタンを探してください。

WordPressキャッシュをクリア

サーバーサイドキャッシュも忘れないでください。多くのホスティングサービスには独自のキャッシュレイヤーがあります。ホスティングコントロールパネルでキャッシュクリアオプションを確認してください。

CloudflareのようなCDNを使用している場合は、そのキャッシュもパージする必要があります。

最初のステップで問題が実際に解決されたにもかかわらず、キャッシュされたページが何時間も404エラーを表示し続けた状況を見たことがあります。すべてをクリアしてから、再度テストしてください。

競合するプラグインまたはテーマを無効化する

パーマリンクのリセットが機能しなかった場合、おそらくプラグインまたはテーマの競合に対処していると思われます。

まずプラグインを確認する必要があります。問題が消えるかどうかを確認するために、すべてのプラグインを無効にしてください。

WordPressプラグインを無効化

次にサイトをテストします。リンクは機能しますか?

もしそうなら、プラグインの競合を確認したことになります。原因を特定するまで、プラグインを1つずつ再度有効にし、有効にするたびにテストしてください。

すべてのプラグインが無効な状態でもリンクが機能しない場合は、Twenty Twenty-FiveのようなデフォルトのWordPressテーマに切り替えてみてください。「外観 » テーマ」に移動し、デフォルトのテーマを有効にして、再度テストしてください。

デフォルトのWordPressテーマを有効化

競合しているプラグインまたはテーマを見つけたら、いくつかの選択肢があります。

  • 問題に対処できるアップデートが利用可能かどうかを確認してください。
  • 同じ機能を持つ代替プラグインを探してください。
  • 開発者のサポートチームに連絡してください。

ファイルパーミッションを確認する

WordPressが.htaccessファイルを自動的に更新するには、書き込みアクセス権が必要です。権限が正しくない場合、パーマリンクをリセットしてもWordPressは新しいリライトルールを書き込むことができません。

正しいファイル権限は次のとおりです。

  • ファイル(.htaccessを含む):644
  • フォルダ: 755

これは、FileZillaのようなFTPクライアントまたはホスティングコントロールパネルのファイルマネージャーを通じて確認できます。

ファイル上で右クリックし、「ファイル権限」を選択します。チェックボックスのあるダイアログボックスが表示されます。

cPanelでファイル権限を変更する

644の場合、次のようになります。

  • 所有者:読み取り + 書き込み
  • グループ:読み取りのみ
  • 公開:読み取りのみ

権限が正しくない場合は、変更してから、「設定 » パーマリンク」メソッドを使用してパーマリンクを再度リセットしてください。

サーバー構成を確認する

ここからがより技術的な内容になります。

Apacheサーバー(ほとんどの共有ホスティング)を使用している場合、mod_rewriteモジュールが有効になっている必要があります。このモジュールにより、そもそもパーマリンクが機能します。

ほとんどのホスティングサービスではデフォルトで有効になっていますが、すべてではありません。

Nginxを使用している場合は、話が異なります。Nginxは.htaccessファイルをまったく使用しません。URLのリライトは独自の構成ファイルを通じて処理されるため、WordPressを通じて自分で修正することはできません。

サーバー構成の問題が疑われる場合は、ホスティングサポートに連絡してください。すべての投稿とページで404エラーが発生していることを伝え、mod_rewriteが有効になっているか(Apacheの場合)、またはパーマリンクのリライトルールが正しく構成されているか(Nginxの場合)を確認するように依頼してください。

ホスティングサポートチームはこれを何度も経験しており、数分で修正できます。

SSLの問題を確認する

最近HTTPSに移行した場合、これはまったくパーマリンクの問題ではない可能性があります。

WordPressダッシュボードの設定 » 一般に移動します。

2つのフィールドを確認してください。

  • WordPressアドレス (URL)
  • サイトアドレス (URL)

両方とも正確に一致する必要があります。SSL証明書がある場合は、両方とも http:// ではなく https:// で始まる必要があります。

WordPressアドレスを更新する

一致しない場合は、更新してください。ただし、ここで注意してください。間違えると、サイトにアクセスできなくなる可能性があります。最初にバックアップを作成してください。

Duplicator で新しいバックアップを追加

これを修正した後にリダイレクトループが表示される場合は、HTTPSリダイレクトを正しく強制するために.htaccessファイルを更新する必要がある場合もあります。

htaccessファイルを手動で再生成する

他のすべてがうまくいかなかった場合は、新しい.htaccessファイルを手動で作成する時期です。

FTPでサイトに接続し、WordPressのルートディレクトリに移動します。.htaccessファイルを見つけて、バックアップとしてコンピューターにコピーをダウンロードします。

サーバー上のファイルを.htaccess_oldに名前変更します。

.htaccessファイルをリネームする

WordPressで設定 » パーマリンクに移動し、変更を保存をクリックします。WordPressはデフォルトのリライトルールで新しい.htaccessファイルを作成するはずです。

WordPressが(権限のために)ファイルを自動的に作成できない場合は、手動で作成する必要があります。.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

そのファイルをWordPressのルートディレクトリにアップロードし、権限が644に設定されていることを確認します。サイトを再度テストしてください。

専門家のヘルプを求める

上記すべてを試してもパーマリンクがまだ壊れている場合は、問題が標準的な修正で対応できるよりも深い可能性があります。データベースの問題、サーバー構成の誤り、またはまったく別の問題である可能性があります。

最初にホスティングサポートチームに連絡する必要があります。ほとんどのホストにはWordPressの専門家がおり、WordPress管理画面からは見えない問題を特定するためにサーバーログを調査できます。

ホストが対応できない場合(またはサポートが最小限のホストを使用している場合)は、WordPressメンテナンスサービスに連絡することを検討してください。WPBeginnerは、このような問題を処理できるプレミアムWordPressサポートを提供しています。

WPBeginner緊急サポートサービス

専門家に30分だけ料金を支払うことで、何時間ものフラストレーションを節約できることがあります。

一度壊れたパーマリンクを修正するのは面倒です。繰り返し修正するのは悪夢です。

この問題に再び対処しないようにする方法は次のとおりです。

ステージングサイトを使用する

本番サイトに触れる前に、ステージングサイトですべてをテストしてください。

プラグインの更新、テーマの変更、およびWordPressコアのメジャーアップデートは、最初にステージングで実行する必要があります。何かがパーマリンク(または他の何か)を壊した場合、実際の訪問者が404エラーを見る前にそれを検出できます。

Duplicator Proを使えば、これが簡単になります。本番サイトの完全なバックアップを作成し、そのWordPressバックアップファイルをステージング環境にドラッグ&ドロップします。データベースとすべてのファイルを含め、完全なクローンが自動的にセットアップされます。

Duplicatorでバックアップをインポートする

今では、大きな変更を加える前には必ずこれを行うようにしています。数え切れないほど助けられました。

サイトが公開され、Googleにインデックスされたら、パーマリンク構造を変更しないでください。

誘惑はわかります。たとえば、最初は/?p=123から始めて、きれいなURLにしたくなったかもしれません。あるいは、投稿URLから日付を削除したいかもしれません。

しかし、そうなると、サイト上のすべてのURLが変更されます。コンテンツを指しているすべての被リンクが壊れます。インデックスされたURLが404エラーを返すようになるため、Googleのランキングは急落します。

どうしても構造を変更する必要がある場合は、古いURLごとに301リダイレクトを設定する必要があります。AIOSEOやRedirectionのようなプラグインで可能ですが、手間がかかり、エラーが発生しやすいです。

最初から良いパーマリンク構造を選び、それに固執してください。ほとんどのサイトでは、投稿名(/sample-post/)をお勧めします。クリーンで、SEOに強く、柔軟性があります。

定期的なバックアップを作成する

最近のバックアップは、究極のセーフティネットです。

何か問題が発生した場合、バックアップを復元すれば数分でオンラインに戻ることができます。バックアップがなければ、簡単な解決策もなく、トラブルシューティングに立ち往生してしまいます。

Duplicatorで自動バックアップを設定することをお勧めします。トラフィックが少ない深夜に実行されるようにスケジュールしてください。バックアップはオフサイトに保存してください(ウェブサイトと同じサーバーにだけ保存しないでください)。

Duplicatorのスケジュールバックアップ

私のバックアップルールはこうです。過去24時間の作業を失うことを心配するなら、毎日バックアップしてください。過去1週間を失うことを心配するなら、毎週バックアップしてください。

よくある質問(FAQ)

パーマリンクが壊れると、発生したときに壊滅的な事態に感じられます。サイト全体が突然404エラーを返し、すべてが消えてしまったように見えます。

しかし、ほとんどの場合、コンテンツは問題ありません。WordPressはリライトルールが混乱しているため、トラフィックを正しくルーティングできないだけです。

体系的なアプローチが機能します。まずパーマリンクをリセットし、キャッシュをクリアし、競合を確認し、権限を確認し、必要に応じてそこからエスカレートします。

そして、問題を修正したら、再発を防ぐための措置を講じます。テストにはステージングサイトを使用します。確立されたサイトのパーマリンク構造を変更しないでください。定期的なバックアップを維持してください。

サイトを移動した後に壊れたパーマリンクを扱ったことがあるなら、それがどれほどイライラするかを知っているでしょう。Duplicator Proは、移行中にサーバー構成と.htaccess調整を自動的に処理するため、ほとんどのパーマリンクの問題が発生する前に防止します。

自動バックアップは、アップデートが問題を引き起こした場合に常に最新の復元ポイントがあることを保証します。今日Duplicator Proをお試しください!

せっかくなので、これらの厳選されたWordPressリソースも気に入ると思います:

著者アバター
Joella Dunn Content Writer
Joella is a writer with years of experience in WordPress. At Duplicator, she specializes in site maintenance — from basic backups to large-scale migrations. Her ultimate goal is to make sure your WordPress website is safe and ready for growth.
Our content is reader-supported. If you click on certain links we may receive a commission.
Duplicatorを入手 - 50%オフ

無料のヒントや資料を、10,000人以上の読者と一緒に、受信トレイに直接お届けします

フォローする

保護されないまま、もう一日を無駄にしないでください

適切なWordPressバックアップなしで過ごす1時間ごとに、サイトはリスクにさらされます • WordPress移行の遅延ごとに、パフォーマンスと成長を失います

Get Duplicator Now
Duplicator プラグイン

お待ちください!
限定オファーをお見逃しなく!

お客様として、60% OFF になります

Duplicator をサイトで無料で試して、150万人以上の WordPress プロが私たちを信頼する理由をご覧ください。ただし、お待ちいただく必要はありません。この限定 60% オフは期間限定です。

or
Get 60% Off Duplicator Pro Now →