Code Bye

关于apache rewrite,求2条重写规则

 

有2个问题,求两条则规:
1、当在url输入http://xx.aaa.com时访问http://xx.aaa.com/xx/index.html
      当在url输入http://yy.aaa.com时访问http://yy.aaa.com/yy/index.html
2、当在url输入http://www.aaa.com/news/4.html 时跳到http://www.aaa.com/1/4.html#注:(4对3取余)
       当在url输入http://www.aaa.com/news/6.html 时跳到http://www.aaa.com/0/6.html#注:(6对3取余得0)
       当在url输入http://www.aaa.com/news/8.html 时跳到http://www.aaa.com/2/8.html#注:(8对3取余得2)
对第二个问题解释一下:
由于我有一个网站,20000多个页面被百度收了,现在想全部静态化,又不想改变原来的入口地址。我把文章的id对3取余作为文件夹的名称,然后通过地址重写访问静态页面。http://www.aaa.com/4.html ,这个4就是文章的id.对3取余得1,所以希望它能访问http://www.aaa.com/1/4.html这个页面。
请高人指教。

有2个问题,求两条则规:(上面有两个地方改一下,不是跳到,而是访问)
1、当在url输入http://xx.aaa.com时访问http://xx.aaa.com/xx/index.html
      当在url输入http://yy.aaa.com时访问http://yy.aaa.com/yy/index.html
2、当在url输入http://www.aaa.com/news/4.html 时访问http://www.aaa.com/1/4.html#注:(4对3取余)
       当在url输入http://www.aaa.com/news/6.html 时访问http://www.aaa.com/0/6.html#注:(6对3取余得0)
       当在url输入http://www.aaa.com/news/8.html 时访问http://www.aaa.com/2/8.html#注:(8对3取余得2)
对第二个问题解释一下:
由于我有一个网站,20000多个页面被百度收了,现在想全部静态化,又不想改变原来的入口地址。我把文章的id对3取余作为文件夹的名称,然后通过地址重写访问静态页面。http://www.aaa.com/4.html ,这个4就是文章的id.对3取余得1,所以希望它能访问http://www.aaa.com/1/4.html这个页面。
请高人指教。
正则里面可以进行取余吗?
不管用什么方法,能实现这个功能就行。
有谁帮我解答第一个问题。在线等。。。
第2个解决了?
参考这个吧。
没有啊,第二个我想应该很难找到办法。
第一个问题坐等高人。

10分
URL重写,你可以自己用Filter去过滤,在Filter里面对这些URL进行取余后重定向
引用 6 楼 rui888 的回复:

参考这个吧。

帮我解决第一个问题好吗?

http://xx.aaa.com时访问http://xx.aaa.com/xx/index.html

RewriteRule ^([^.]+).aaa.com http://$1.aaa.com/$1/index.html

引用 8 楼 suciver 的回复:

URL重写,你可以自己用Filter去过滤,在Filter里面对这些URL进行取余后重定向

我要的是静态化,真正的静态化,不经过tomcat的。

引用 10 楼 rui888 的回复:

http://xx.aaa.com时访问http://xx.aaa.com/xx/index.html
RewriteRule ^([^.]+).aaa.com http://$1.aaa.com/$1/index.html

感谢,原来前面不能加”http://”啊。我等会去试一下。

引用 11 楼 footprint2008 的回复:
Quote: 引用 8 楼 suciver 的回复:

URL重写,你可以自己用Filter去过滤,在Filter里面对这些URL进行取余后重定向

我要的是静态化,真正的静态化,不经过tomcat的。

URL重定向都不可能是真正的静态化的,而且在静态化方面tomcat没有apache好用,即便你在配置文件中设置也是一样的是要通过服务器进行重定向,重定向和静态化并不冲突,即便是静态的资源文件,一样要通过服务器检索的

引用 10 楼 rui888 的回复:

http://xx.aaa.com时访问http://xx.aaa.com/xx/index.html

RewriteRule ^([^.]+).aaa.com http://$1.aaa.com/$1/index.html

我测试了,你的方法不正确。


30分
我没环境没法测试, 正则应该没问题 。 
引用 15 楼 rui888 的回复:

我没环境没法测试, 正则应该没问题 。 

虽然不正确,但仍非常感谢!


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明关于apache rewrite,求2条重写规则