免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 4864 | 回复: 14
打印 上一主题 下一主题

[Web] 关于 Rewriterule [P]的一个问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-12-22 23:53 |只看该作者 |倒序浏览
小菜准备用mod_rewrite 实现"代理"+"动态转静态"
也就是说通过访问www.mysite.com 来访问 www.othersite.com
我想用RewriteRule ^/(.*)$ http://www.othersite.com/$1 [P]可以来实现吧
但是其中www.othersite.com中的有些页面有?=&……等对搜索引擎不友好的东西。
于是又加了一些RewriteRule来使其动态转静态如:RewriteRule ^(.*)-htm-(.*)$ $1.php?$2 之类的东西。
但是发现后面加的RewriteRule时而有用时而没用。
我想可能是这些规则可能和第一个规则有重复的地方而导致的。(个人猜测)因为我把第一个规则#了以后,后面的规则应用正常了。但是又有问题来了,就是由于程序不在我的服务器上,而我又只对页面进行重写,而页面又要调othersite上的程序或图片。导致这些页面的功能很多都不能用。
图片等知道后缀名的内容还好说,可以再添加规则。有些程序连是什么都不知道该怎么办呢?
各位大哥帮我想想吧。。

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
2 [报告]
发表于 2006-12-23 00:20 |只看该作者
这个没有什么办法做到

你最好使用一个webcopy程序来处理。

论坛徽章:
0
3 [报告]
发表于 2006-12-23 00:29 |只看该作者
谢谢你那么晚了

那我想再问一下,如果第一个规则不包括后缀为.html的文件的话那还可以实现吗?

论坛徽章:
0
4 [报告]
发表于 2006-12-23 00:37 |只看该作者
我想应该可以吧,因为我后面加了几个.gif和.jpg的规则,那些动态转静态的页面就可以看到图片了。

可是正则表达式该怎么写呢?

论坛徽章:
0
5 [报告]
发表于 2006-12-23 00:44 |只看该作者
好像说的不清楚

也就是说当这个规则 RewriteRule ^/(.*) http://www.othersite.com/$1 [P]
                     不包括 。html 的重写的时候就应该可以了。
               可是正则表达式该怎么写呢?

论坛徽章:
0
6 [报告]
发表于 2006-12-23 01:34 |只看该作者
文档中对[P]有这样的描述:
This flag forces the substitution part to be internally sent as a proxy request and immediately (rewrite processing stops here) put through the proxy module.

是否可以把 RewriteRule ^/(.*) http://www.othersite.com/$1[P]规则的放到最后
动态参数,再加个[QSA]参数暂时解决可以不
你可以试试

论坛徽章:
0
7 [报告]
发表于 2006-12-23 09:30 |只看该作者
非常感谢

正在试,完了来回帖

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
8 [报告]
发表于 2006-12-23 10:16 |只看该作者
页面是别人的,你仅仅通过mod_rewrite是无法修改页面的内容,把动态网址替换为静态的。

而蜘蛛爬过来,也基本上是通过你的动态地址爬的。

我说使用webcopy,你就可以让蜘蛛爬的页面都是静态网址了。

论坛徽章:
0
9 [报告]
发表于 2006-12-23 10:45 |只看该作者
谢谢leaner
但是你的方法还是不起作用啊。

我想我的方法应该是可行的,只怪当初书没读好,不精通正则表达式。看的我头都大了。

不知道你是否可以想一个规则来使“XXXX.html”不在此 RewriteRule ^/(.*) http://www.othersite.com/$1 [P] 规则中进行重写。

这样就不回和的“动态转静态”的规则矛盾了

论坛徽章:
0
10 [报告]
发表于 2006-12-23 11:02 |只看该作者
原帖由 HonestQiao 于 2006-12-23 10:16 发表
页面是别人的,你仅仅通过mod_rewrite是无法修改页面的内容,把动态网址替换为静态的。

而蜘蛛爬过来,也基本上是通过你的动态地址爬的。

我说使用webcopy,你就可以让蜘蛛爬的页面都是静态网址了。


你说的东西,我绝对会去尝试的。

但是现在,我想这些东西会分散我对现在的rewrite的学习。所以,我想通过我现在想到的方法来解决。

刚刚学习这个东西,知道他的强大,所以想尝试,仅仅是以学习的目的来的。而且我认为我们小菜们,只是想通过这样一个过程来达到对所用的东西的深入了解。(文档太抽象了,没有操作看文档简直是个折磨,但是我还是痛并快乐着)

谢谢HonestQiao和CU的大虾们,没有你们的指导我们也许很多问题永远解决不了。也许因此而放弃。

哇说太多了
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP