1

我有一个带有博客的服务器,现在的配置是一团糟。

它是一个运行 umbraco 的 .NET 服务器,并且该博客由其中的 wordpress 托管。您可以想象 umbraco 的 web.config 似乎覆盖了 PHP 设置。

我想要的是从“blog.mydomain.com”访问的博客“www.mydomain.com/blog”。我已经在 blog.mydomain.com 上添加了一条 A 记录,并等待看看这是否可行,但我不确定我是否还需要一些 301 重定向?

更重要的是,所有博客链接都崩溃了,因为 mydomain/blog/ 没有转到 index.php(Umbraco 使 default.aspx 成为默认页面,即使 index.php 在 IIS 上被列为默认页面)。

是否有重写规则将博客文件夹中的所有空斜杠默认为 index.php?

我发现这有点前途,但只适用于父文件夹:我需要一些适用于博客所有子文件夹的东西

<urlrewritingnet xmlns="http://www.urlrewriting.net/schemas/config/2006/07">
    <rewrites>
<add name="gotoindex"
               redirect="Domain"
               ignoreCase="true" rewriteUrlParameter="IncludeQueryStringForRewrite"
               virtualUrl="http://mysitename/"
               redirectMode="Permanent"
               destinationUrl="http://mysitename/index.php" />
        </rewrites>
</urlrewritingnet>

我也希望保留查询字符串。目前链接看起来像这样:http://mydomain.com/blog/?m=201208 理想情况下我希望转发到http://mydomain.com/blog/index.php?m=201208

非常感谢任何帮助。真的迷路了!!谢谢

4

1 回答 1

2

我已经解决了。

关键是要做到这一点:

<add key="umbracoReservedPaths" value="~/umbraco,~/install/, /blog/" />

通过向 web.config 添加例外,博客文件夹不再绑定 umbraco 配置,并且 PHP 的 IIS 设置开始工作!

此规则还修复了从 blog.mydomain.com 到 www.mydomain.com/blog 的重定向

将此键添加到 UrlRewriting.config

<add name="blogfix" virtualUrl="^http\://blog.mydomain.co.uk/(.*)"
                    rewriteUrlParameter="ExcludeFromClientQueryString"
                    destinationUrl="http://www.mydomain.co.uk/blog/$1"
                    redirect="Domain"
                    redirectMode="Permanent"
                    ignoreCase="true" />    
于 2012-10-31T13:13:11.633 回答