はじめに
以前より、WordPressのパーマリンク設定を変更すると、すべてのページが404 Not Foundになってしまう問題がありました。そのため、デフォルト設定から変えられずにいました。
今回その問題の解決のためググっていたところ、.htaccessファイルというものを作成、修正する必要がある、というものがありました。
しかし、Nginxを使用している場合は、.htaccessファイルはそもそも使用されないそうです。
そのため、Nginx特有の設定変更をする必要がありました。
どんな設定変更をすればよいの?
結論から言うと、Nginxの設定ファイルである、”nginx.conf”のserverセクション内に下記を記載してあげるだけでした。(赤字にしているのが追記項目)
・ ・ (略) ・ ・ # Settings for a TLS enabled server. server { ・ ・ (略) ・ ・ location / { try_files $uri $uri/ /index.php?$args; } ・ ・ (略) ・ ・ }
その後、nginxを再起動してください。(e.g. amazon linuxの場合は”system restart nginx”)
この後、WordPressの【設定】⇒【パーマリンク】から、パーマリンクを”カスタム構造”に変えてみましたが、Not Foundとなることなくうまくこれまでのページが表示されました!!!
下記のサイトを参考にさせてもらいました。

余談ですが、上記サイトは私のサイトと構成が同じ※のようなので、とても親近感がわきましたw
※AWS+EC2(Amazon Linux 2)+WordPress+Nginx+Let’s Encrypt(SSL)
さいごに
何かと癖があるNginx。一般的なWordPressはApacheで作られているため、ネットに書いている情報をうのみにして設定を変えてしまうと、取り返しのつかないことになってしまいそうです。。(汗)
ただ、AWS+WordPress with Nginxは自分で選んだ(茨の)道なので、これからもうまく付き合っていきたいですw
コメント