遇到个任意二级域名的伪静态规则难题,请高手们帮忙
情况如下:
要求实现二级域名user1.aaa.com可以访问到下面的实际地址:
http://www.aaa.com/web/11/0603/user1/但是实际地址里的11/0603/是用户注册时按日期生成的,是变动的,但是二级域名给来的变量只有用户名数据,这样还有办法吗?如果实际地址是http://www.aaa.com/user.php?id=user1
这样的倒是很容易,但是因为要生成真静态页面,同一个文件夹也不想超过1000个文件,所以只能采取这种随日期生成文件夹存放的方法,结果就遇到了这个伪静态规则问题,伪静态固然不能读取数据库把日期路径判断出来,看看高手们有没有什么巧妙的解决方案,谢谢

解决方案 »

  1.   

    Apache虚拟主机的配置上绑定*.abc.com,然后只针对/web/11/0603/user1/写转发规则就可以了
      

  2.   

    和/web11/0603/无关,直接忽略就行
    .*/([a-z0-9])/$
      

  3.   

    /web/11/0603/user1/ 对应的规则  /web/*/*/([a-z0-9])/$
      

  4.   


    我晕,怎么不明白呢,例如http://www.aaa.com/web/11/0603/user1/
    http://www.aaa.com/web/11/0713/user2/user1.aaa.com
    user2.aaa.com这个二级域名过来的只有user1,路径中的11/0613是存在数据库里的,你怎么知道这个转发规则是写多少???
      

  5.   

    晕了,终于弄明白你要干什么了!
    你的意思是:
    user1.aaa.com==>http://www.aaa.com/web/11/0603/user1/
    user2.aaa.com==>http://www.aaa.com/web/11/0713/user2/
    这样的对应吧?
    这个单靠rewrite是没办法实现的,你可以
    user1.aaa.com=>http://www.aaa.com/redirect.php?uid=user1
    然后通过redirect进行跳转
      

  6.   

    那就这样,别用日期作为目录名称了,如果用户比较多,可以用两位作为目录名
    user1.aaa.com==>http://www.aaa.com/web/u/user1/