如何在 Wordpress 中设置多站点模式的伪静态规则?
作者:悦然 wordpress 建站(悦然建站)
(此处已添加小程序,请到今日头条客户端查看)
继续分享 wordpress 建站教程。近期悦然完成了一个 wordpress 多站点建站项目,使用了 wordpress 自带的多站点模式,可以非常简单地创建分站。悦然 wordpress 建站也是第一次做多站点项目,所以还是遇到了一些问题,不过最终都解决了,接下来我会给大家分享 wordpress 多站点模式可能遇到的问题和解决方法,今天先分享一下多站点模式的伪静态设置。
Apache 多站点伪静态规则
网上找到的 wordpress 多站点模式的伪静态规则很多都是 Apache 环境的,下面是一个适用于 Apache 环境的子域名多站点伪静态规则:
```
文章由网站同步到多个平台,部分平台可能看不全代码,可打开网址查看
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).) $1 [L]
RewriteRule ^(..php)$ $1 [L]
RewriteRule. index.php [L]
```
如果是子目录多站点模式,伪静态规则如下:
```
文章由网站同步到多个平台,部分平台可能看不全代码,可打开网址查看
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).) $1 [L]
RewriteRule ^(..php)$ $1 [L]
RewriteRule. index.php [L]
```
Nginx 多站点伪静态规则
Nginx 环境下,子目录和子域名的伪静态规则都可以通用,下面是一个适用于 Nginx 环境的伪静态规则:
```
文章由网站同步到多个平台,部分平台可能看不全代码,可打开网址查看
ignored: "-" thing used or unknown variable in regex/rew
rewrite ^/([_0-9a-zA-Z-]+/)?wp-admin$ /$1wp-admin/ permanent;
ignored: "-" thing used or unknown variable in regex/rew
rewrite ^/([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).)$ /$2 last;
rewrite ^/([_0-9a-zA-Z-]+/)?(..php)$ /$2 last;
rewrite /. /index.php last;
```
