2012-10-30 26 views
1

我有一个服务器和博客,现在的配置是一个大热的混乱。.NET服务器上的PHP配置 - URL重定向

这是一个运行umbraco的.NET服务器,博客是在wordpress中托管的。 正如你所想象的,umbraco的web.config似乎覆盖了PHP设置。

我想要的是从“blog.mydomain.com”访问“www.mydomain.com/blog”的博客。 我在blog.mydomain.com上添加了一条记录,并等待看看是否可行,但我不确定是否还需要一些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

任何帮助是非常赞赏。 真的迷失在这里!谢谢

+0

我会建议使用一个宁静的模样http://mydomain.com/blog/201208或为这种情况下(猜测米留在年/月)http://mydomain.com/blog/date/2012/08) – Beachwalker

+0

查询字符串工作正常,我是什么想要的是将index.php而不是default.aspx作为默认页面。 我不认为改变查询字符串的格式将有所帮助。 – Nick

回答

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" />  
+0

我知道这是一个古老的线程,但这节省了我几个小时的头挠,所以感谢这:) –