質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

Q&A

解決済

1回答

2105閲覧

Wordpressにて、特定のURLにアクセスするとTOPページにリダイレクトしてしまう問題を解決したい。

goodevelop

総合スコア5

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

0グッド

0クリップ

投稿2020/03/04 06:49

編集2020/03/05 02:26

発生している問題・エラーメッセージ

現在、ConohaVPS + kusanagiの環境にて、wordpressを運用しております。
※以降、運用しているwebページのURLを'https://example.com'と表記します。

ある日、'https://example.com/events'に遷移するリンクにアクセスした際、自動でTOPページに遷移してしまう事象が発生しました。
(いままで、'/events'には、固定ページのパーマリンクを設定しており、問題なく目的の固定ページに遷移していました。設定や当該固定ページのリンク等を触った記憶はありません。)

自らググってみたり、ファイルを触ってみたりしましたが現在まで解決しいないため、ご質問しております。

実行環境

Conoha VPS + kusanagi

$ cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core) $ php -version PHP 7.3.5 (cli) (built: May 8 2019 16:24:54) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.3.5, Copyright (c) 1998-2018 Zend Technologies $ kusanagi --version KUSANAGI Version 8.4.2-2

Wordpressバージョン:5.3.2
Webサーバ:Nginx/1.17.0

分かっていること・試したこと

ブラウザ・Wordpress管理画面からの調査

ターミナル上での調査

  • nginxログを確認すると、以下の様になっているため、何らかの理由でリダイレクトされていると考えている。
[04/Mar/2020:15:25:09 +0900] "GET /events/ HTTP/2.0" 301 0 "https://~.com/" ~
  • 以下のサイトを参考に、wp_redirect()を定義している箇所を特定し、debug_backtraceを追加した。

しかし、その後'https://example.com/events'にアクセスしても、デバッグログは表示されていないため、wp_redirectを使用せずにリダイレクトしていると推定。
※wp_redirect()を定義している箇所は'wp-include/pluggable.php'のみであった。
(参考サイト)
https://aulta.co.jp/archives/3805

  • .htaccessファイルは初期状態から触っていない。
  • 元の固定ページのcanonicalタグは以下の様になっている。
<link rel=”canonical” href=”https://example.com/events”/>

何か他に調査すべき事項などに心当たりがある場合は、お教えいただきたいです。

お手数ですが、どうぞよろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

goodevelop

2020/03/05 02:27

指摘ありがとうございます。 全てexample.comに変更しました。
guest

回答1

0

ベストアンサー

WordPressのテンプレート階層に準じて、index.phpにリダイレクトされているのではないでしょうか。
※トップページにindex.phpが適用されていると仮定。

eventsというパーマリンクが固定ページではなく、例えばカテゴリやタグなど固定ページ以外のパーマリンクと、何かしらのきっかけで判定してしまうように変わった可能性があります。

テーマ内に用意されていないテンプレートファイルを追加し、各ファイルにわかりやすい目印をつけたうえでeventsへアクセスすれば、切り分けができそうかなと考えます。

テンプレート階層

投稿2020/03/05 00:22

編集2020/03/05 00:26
sandygift

総合スコア73

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

goodevelop

2020/03/05 02:42

テンプレート階層のページを参考に、以下の調査を行いました。 ・page-events.php, category-events.php, tag-events.phpを作成し、再度/events/にアクセス。 →NG ・DB内で、「events」というslugがあるか調査→なし ・page.phpにデバッグログを仕込んでアクセス→ログ表示されず。page.phpを通らずにリダイレクトされていると推測。 ・template-loader.phpにデバッグログを仕込んでアクセス→リダイレクト後のTOPページテンプレートを取得するログが表示されたため、わからず。。。 今回は、対処を急がねばならなかった都合上、対症療法として/events/を複製した固定ページを用意(/event-list/など)し、webサーバーにて、/events/から複製ページにリダイレクトするように修正しました。 調査していない箇所の助言をいただいたため、ベストアンサーといたします。 アンサーありがとうございます! 今回の事象は本番のみの事象であったため、あとで時間ができたら丸ごとデータをコピーして、テスト環境にて引き続き調査続行したいと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問