HTTP_REFERER、HTTP_USER_AGENT、および WordPress の特定のディレクティブを含む .htaccess ファイルを以下に示します。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_REFERER} acertainwebsite\.com [NC,OR]
RewriteCond %{HTTP_USER_AGENT} acertainwebsite.com [NC]
RewriteRule .* - [F]
RewriteBase /
RewriteRule ^index\.php$ - [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) wordpress/$2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ wordpress/$2 [L]
RewriteRule . index.php [L]
</IfModule>
FreeBSD で VPS を実行しています。ルート .htaccess ファイルのディレクティブ RewriteCond %{HTTP_REFERER} および RewriteCond %{HTTP_USER_AGENT} が下位レベルのサブディレクトリで適用されているかどうかをテストする方法がわかりません。
Wordpress 4.1.1 の最新バージョン。サブディレクトリ構造オプションを使用して、マルチサイト オプションをオン/有効にしてインストールされます。
一部のリファラー トラフィックがルート ディレクトリの .htaccess ファイルを通過している可能性があると思われます。.htaccess ファイルのディレクティブが上にカスケードすること、Apache が最初にサブディレクトリを検索し、次に親を検索し、次に親から親を検索することをどこかで読みました。
そこで質問です。マルチサイト インストールの各サブディレクトリに .htaccess ファイルを配置する必要がありますか? または、マルチサイト インストールのルート ディレクトリに .htaccess ファイルが 1 つあれば問題ありませんか?
マルチサイト ドメインの各サブディレクトリに .htaccess ファイルを配置する必要がある場合、サブドメインに空の .htaccess ファイルを配置するだけで十分でしょうか? それは、強制をチェックするために上向きのカスケードをトリガーしますか?
これがどのように機能するかについての適切な説明、またはそれをよりよく説明する別の情報源への参照がある場合は、お知らせください。ありがとう!!!