我的建议是:使用相同的标准.htaccess
Wordpress在每个Wordpress目录中的单个域上的配置。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
同时,添加一个小代码以确保用户重定向到正确的域,以防他们使用另一个域访问该子目录:
RewriteCond %{HTTP_HOST} !^domain\\.com$
RewriteRule ^(.*)$ "https://domain.com/$1" [R=301,L]
之后,您的
.htaccess
对于
domain.com
将类似于:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^domain\\.com$
RewriteRule ^(.*)$ "https://domain.com/$1" [R=301,L]
RewriteRule ^index\\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
对于
subdomain.domain.com
, 这就像:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !^subdomain\\.domain\\.com$
RewriteRule ^(.*)$ "https://subdomain.domain.com/$1" [R=301,L]
RewriteRule ^index\\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
原因:建议使用标准代码,因为它更易于维护和;调试,因为到处都是一样的。
额外的两行建议主要用于SEO
. 如果没有它们,您的一个域可以使用另一个域访问。这可能会引发一些重复内容的问题。