最近是用ISAPI_Rewrite做域名重定向,目标是多个域名对应同一个站点上面多个文件夹里面的文件,譬如域名1:www.test1.com对应根目录下面的/selectmodel/A001/default.aspx页面,域名2:
www.test2.com对应根目录下面的/selectmodel/A002/default.aspx页面(A001和A002目录下的文件都是引用不同css,文件的html布局不同,仅仅是数据相同),对应的httpd.ini里面的配置为:
RewriteCond Host: www.test1.com
RewriteRule / /SelectModel/A001/default.aspx
RewriteRule /about-us/ /SelectModel/A001/aboutus.aspx
RewriteCond Host: www.test2.com
RewriteRule / /SelectModel/A002/default.aspx
RewriteRule /about-us/ /SelectModel/A002/aboutus.aspx
在访问www.test1.com,www.test2.com 是没有问题,但是在访问www.test2.com/about-us的时候原本应该引用A002对应的css和html却有部分引用的A001里面aboutus.aspx的内容,但是大部分是一样的,以至于页面的布局错乱,请问谁遇到过这样的问题(个人感觉很灵异),请帮忙解决一下。
在访问www.test2.com 时执行httpd.ini的顺序是先找到RewriteCond根据host找到对应的www.test2.com 然后根据RewriteRule 一个一个规则匹配修改url?(对这个执行顺序不是很清楚)但是似乎RewriteCond Host: www.test2.com里面的规则被上面的RewriteCond Host: www.test1.com里面的规则影响了。
1.你确定在iis的映射里面是*.*。如果只是映射.aspx就会有问题
2.主要是页面中的css何html路径你到底是怎么做的,如果是绝对路径你其实没有对css,html文件作对应的映射啊,他怎么找得对。相对路径在这好像不太好整。
没有整过http。ini这种不知道能否做目录映射 :把:“ /about-us/” 映射到“/SelectModel/A002/” 。里面使用相对路径就行:)
about-us中"-"可能是个特殊字符,建议用下划线_代替