0

由于超出此问题范围的原因,我需要将 WP 放在我的域的根目录中,example.com. 但是,example.com已经映射到我的实时站点,该站点实际上存储在子目录中example.com/livesite。目前我正在使用 .htaccess 指向Example.com该子目录;但是,WP 有自己的一组 .htaccess 规则,如果我包含它们,它们会搞砸重定向。但是,这些规则是 WP 工作所必需的,因为我正在使用多站点安装,并且如果没有适当的 .htaccess 规则,子站点将无法访问。

我目前正在使用的 .htaccess:

RewriteEngine on
RewriteRule ^(wp-(content|admin|includes)|site1|site2|site3) - [L]
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteCond %{REQUEST_URI} !^/example/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /example/$1
RewriteCond %{HTTP_HOST} ^(www.)?example.com$ 
RewriteRule ^(/)?$ example/index.php [L]

我需要安全地集成到该 .htaccess 中:

RewriteEngine On
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).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]

到目前为止,我最接近让这两者一起工作的是我目前使用的 .htaccess 的第二行;然而,我所做的只是让我访问主 WP 博客的管理端。其他博客仍然无法访问。

如何整合这两个 .htaccess 规则,以便example.com仍然指向example.com/livesite,并且所有与 WP 相关的 URL 都将通过并返回预期的页面?

4

0 回答 0