Ubuntu18.04LTSになってから、WordPressに対応するためのNginxの設定がやや変わった気がしますSEO対策のためにPermalinkを変更するのが一般的ですが、Nginxの設定が間違っているとデフォルトの設定以外に変更した場合「Not Found 404 Error」の嵐が吹き荒れてしまいます。Google先生に聞いてもいろんなことが書いてあって、どれを試しても嵐が収まりません。ということで、最終的には次の設定にたどり着きました。
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
# try_files $uri $uri/ =404;
try_files $uri $uri/ /index.php?q=$uri&$args;
}
# pass PHP scripts to FastCGI server
#
location ~ \.php$ {
include snippets/fastcgi-php.conf;
#
# # With php-fpm (or other unix sockets):
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
# # With php-cgi (or other tcp sockets):
# fastcgi_pass 127.0.0.1:9000;
}
要のところは、赤文字の箇所です。WordPressではインストールしたルートのディレクトリにある/var/www/wordpress/index.phpが、Permalinkを解釈してくれるようですが、そのために、
try_files $uri $uri/ /index.php?q=$uri&$args;
が必要のようです。