我在SO和其他网站上看到了一堆帖子,但我的方法都不起作用。我想可能是因为我的子域结构不同。
我有一个WordPress多站点安装,有三个站点。进入有点晚了,所以我必须让子域出现在 URL 的末尾。例如,其中一个 URL 是 dairyking.com/dairyberries/的,而不是 dairyberries.dairyking.com
所以我在我的/htaccess 中有一个重定向:
# Rewrite rules which will only apply to dairyberries.com/dairyking
RewriteCond %{HTTP_HOST} ^dairyberries.com [nc]
RewriteRule ^dairyking/category/recipe/$ http://dairyberries.com/dairyking/category/recipe/ [R=301,NC,L]
但复发仍然没有发生。那么我该怎么做才能让这段代码为我工作呢?
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /multi_website/
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /multi_website/index.php [L]
</IfModule>
# END WordPress
RewriteEngine On
RewriteBase /multi_website/
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).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*.php)$ $2 [L]
RewriteRule . index.php [L]
将此添加到您的 .htaccess 文件中。请参阅下面的屏幕截图。这将工作100%。
http://prntscr.com/o5t989 .
https://prnt.sc/o5t9zlmulti_website/wp-admin/(主网站(
multi_website/abc/wp-admin/
multi_website/pqr/wp-admin/