iis7 rewritebase部分网站(wordpress)

我们正在慢慢地将我们现有的网站转换为wordpress平台。 我目前有3个目录设置在一个子目录中,但这些需要看起来像他们在网站的根。

例如:旧网站是在http://www.site.com/但WordPress的基地在http://www.site.com/wp/所以当你在一个类别页面,而不是看起来像http://www.site.com/wp/category它应该看起来像http://www.site.com/category

我已经通过IIS7 URL重写模块照顾了这部分。 唯一的问题是,网站上的所有超链接仍然指向/wp/作为基础。 如何在不影响旧网站的其他部分的情况下重写wordpress文件的基础? 我需要修改web.config文件吗? 如果是这样的话,我把configuration文件放在/wp/目录或网站的根?

通常我会让我们的SA做到这一点,但他出去了,我需要今天得到这些网页:(

希望这可以帮助:

我们使用web.config文件并修改它来设置URLredirect。 该文件需要在你的/ wp /目录中。 实际上,您需要在每个要进行redirect的文件夹中使用一个web.config文件。

答案其实很简单。 在wordpress设置中有一个博客URL和物理位置URL的地方。 我所要做的只是将http://www.site.com放在博客url中,并将http://www.site.com/wp/放在实际的位置URL中。 这种方法唯一的问题是,它有时会导致后期预览不工作。 这将需要一些URL重写来解决。 我不确定这是否是100%,但会看起来像这样(如果有错,请随时纠正,我会更新它):

 <rule name="preview rewrite"> <conditions> <add input="{QUERY_STRING}" pattern="p=([0-9])&preview=true" /> </conditions> <action type="Rewrite" url="http://www.site.com/index.php?p={C:1}&preview=true" /> </rule> 

此外,如果您的图片在标准的wp-contents/uploads文件夹中,您将在整个网站上提供以wordpress为中心的url。 为此,最好的select是将上传文件夹放在wp-contents文件夹之外。 我通常把它放在网站的根目录,并给它一个像imagesassets的名字