現象
SiteGuard WP PluginにてログインページURLの変更を有効化する。本来は、変更されたURLにアクセスすることでログインページが表示されるが、何故かPage Not Found (HTTP STATUS 404)になってしまう。
未検証ですが、他のmod rewriteを利用する機能も、有効化すると同様に問題が発生しそうです。
なお、WordPressをドキュメントルートに作成したサブディレクトリにインストールし、サイトURLからサブディレクトリを除いてアクセスするようにしている環境です。
原因
WordPressのインストールディレクトリに設置された.htaccessにおいて、SiteGuardが記述したRewrite BaseのパスとWordPressが記述したRewrite Baseのパスが一致していない。
※原因は他にもある可能性がありますので、あくまで1つの原因として捕らえて下さい。
対処法
WordPressが記述したRewrite Baseのパスを、SiteGuardが記述したRewrite Baseのパスに書き換える。(後者が正しい)
補足
何故このようなことになっているのか、自分が一番最初にWordPressを設置した時のことを思い出してみました。
このサイトは、元々別のサーバーで運用していて、移転先のレンタルサーバーではマルチドメインで運用することを目標としていました。
利用したレンタルサーバーでのマルチドメインは、初期ドメインでのドキュメントルートにサブディレクトリを作り、そのサブディレクトリをマルチドメインのドキュメントルートとする仕組みでした。
マルチドメインのドキュメントルートにwpディレクトリを作り、そこにWordPress本体をアップロード。初期ドメインでインストール先にアクセスしてインストールを完了し、その後でサイトURLからwpディレクトリの記述を削除しました。
そして最終的にはDNSレコードを書き換え、移転先のレンタルサーバーにてマルチドメイン用のサブディレクトリがマルチドメインのルートディレクトリとして機能するようになり、独自ドメインでアクセス出来るようになりました。
WordPressのインストールディレクトリ配置されていた.htaccessには、マルチドメインのルートディレクトリとなるディレクトリ名がパスとして記述されており、これは初期ドメインでインストールを進めたことが影響していると思われます。
プラグインを有効化して設定するまで何の問題もなく動いていたので、全く気付きませんでした。