添加多站点后上传的图像不会加载到多站点网络的任何域中

时间:2021-04-20 作者:Sagun Raj Lage

我有一个托管在Microsoft Azure上的多站点网络。我使用Azure marketplace中的WordPress安装映像(不是WordPress for Linux)执行了WordPress安装。后来,我创建了一个多站点网络,并添加了一个子域来设置网站的博客。我使用WordPress提供的设置说明来设置网络(包括web.config 文件)。这是web.config 文件:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="WordPress Rule 1" stopProcessing="true">
                    <match url="^index\\.php$" ignoreCase="false" />
                    <action type="None" />
                </rule>
                <rule name="WordPress Rule 2" stopProcessing="true">
                    <match url="^wp-admin$" ignoreCase="false" />
                    <action type="Redirect" url="wp-admin/" redirectType="Permanent" />
                </rule>
                <rule name="WordPress Rule 3" stopProcessing="true">
                    <match url="^" ignoreCase="false" />
                    <conditions logicalGrouping="MatchAny">
                        <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" />
                        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" />
                    </conditions>
                    <action type="None" />
                </rule>
                <rule name="WordPress Rule 4" stopProcessing="true">
                    <match url="^(wp-(content|admin|includes).*)" ignoreCase="false" />
                    <action type="Rewrite" url="{R:1}" />
                </rule>
                <rule name="WordPress Rule 5" stopProcessing="true">
                    <match url="^([_0-9a-zA-Z-]+/)?(.*\\.php)$" ignoreCase="false" />
                    <action type="Rewrite" url="{R:2}" />
                </rule>
                <rule name="WordPress Rule 6" stopProcessing="true">
                    <match url="." ignoreCase="false" />
                    <action type="Rewrite" url="index.php" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>
安装多站点网络后,我上载到主域和子域的图像不会加载到媒体库中。仅显示灰色方形框。当我尝试使用打开灰色方框后找到的URL打开它们时(例如,https://blog.someurl.com/wp-content/uploads/sites/3/2021/04/img.pnghttps://someurl.com/wp-content/uploads/sites/3/2021/04/img.png), 我收到一条错误消息,上面说:

您正在查找的资源已被删除、名称已更改或暂时不可用。

然而,在建立多站点网络之前上传到主站点的图像工作正常。新上传的未加载的图像也存储在存储器中。

有人能帮我解决这个问题吗?

1 个回复
SO网友:Sagun Raj Lage

通过将两个站点的上载路径更改为安装multisite之前上载图像的路径,我终于能够解决这个问题。multisite的安装已将上载路径更改为无法访问的路径。因此,我把它还原为旧的。我不确定这是不是一个好方法。