blue and white star illustration

GoogleサーチコンソールでサイトのURLを検査したらインデックスされていない。


そのURLにブラウザでアクセスしても普通に閲覧できる。
robots.txtも許可になっている。
htmlにnoindexの指定もしていない。
でもなぜかGoogle Botには404に見えているようだ。

.htaccessを疑ってみる

.htaccessが問題かと思い、いじってみると、ここで発見したのが.htaccess内の以下の記述を削除すると動くということ。

AddHandler fcgid-script .php .html

しかしこの記述は「.html拡張子のファイルをphpとして動作させる」設定の記述なので削除するわけにもいかない。

原因はphpのrequire_once (‘wp-blog-header.php’)の記述だった

困り果ててぐぐってみると以下のサイトさんに同じような状況が報告されてて、
WordPressに原因があることが判明した。

▼ブラウザで表示されるのにHTTPステータスが404となる場合の対処方法
https://blogs.itmedia.co.jp/webnoma/2019/01/15.html

WordPressの関数をWordpress範囲外のphpファイルで利用してたい場合、phpファイルに

<?php require_once ('wp-load.php'); ?>
または
<?php require_once ('wp-blog-header.php'); ?>

のどちらかで記述していたのだが、
今回の「Google botからのみ404に見える」事象は
「wp-load.php」を読み込んだ場合は起こらない
「wp-blog-header.php」を読み込んだ場合に起こる
ことが判明。 今後は、wp-load.phpを読み込むようにしよう。。