Wordpress Multisite - 使用 .htaccess

问题描述

我已将我们的网站更改为 wordpress站点。在我的本地主机上,一切正常。但是在我们的生产站点上,我遇到了一些问题。

正常站点在新设置 (example.com) 后工作,但是当我创建子域站点 (en.example.com) 时,我收到 500 内部服务器错误。域映射应该没问题。 (我已将通配符指向我们服务器的 ip) 子域出现问题。 因此,我们的主机似乎总是将子域(我无法更改任何内容)指向子文件夹。例如 /www/en。

据我所知,wordpress站点需要定向到 wp 安装的根目录才能使其工作。有什么办法可以让子文件夹中的 .htaccess 文件工作吗?

解决方法

因此,我们的主机似乎总是将子域(我无法更改任何内容)定向到子文件夹。 /www/en 例如。

除非您有权访问服务器配置,否则您无法“修复”1。但是,如果您有权访问服务器配置,则需要更改子域的 DocumentRoot 开头。

1 “修复”是指在内部将请求重写到父目录(即子域 DocumentRoot 目录上方的一个目录)。在 .htaccess 中,您无法重写文档根目录上方的请求 - 您只能在 virtualhostserver 上下文中执行此操作,您可以在其中重写为任意文件系统路径。但是,如前所述,真正的“修复”是更改子域的 DocumentRoot

只能创建指向主域文档根目录之外的子目录的子域是相当有限的。

域映射应该没问题。 (我已将通配符指向我们服务器的 ip)

通常,您会在 <VirtualHost> 容器中执行相同的“通配符”操作,以便您的服务器接受对这些“子域”的请求,而无需手动配置每个子域。

ServerAlias *.example.com

或者,您将默认的 vHost 或主服务器配置配置为接受所有主机的所有请求 - 但这意味着您有一个专用服务器(即完全访问权限),而您似乎没有。