【发布时间】:2009-12-25 01:59:42
【问题描述】:
问题: 我愿意接受最初的请求。说它,/IWantToGoHere/index.php 但我想回到浏览器,/GoHere/index.php
要明确:
我实际上想将原始请求位置发送到请求的脚本,但是,我想向用户返回一个浏览器 URL 到另一个目的地。
代码:
RewriteEngine on
RewriteRule ^(.*)IWantToGoHere\/\.php$ GoHere/index.php [NC,C]
RewriteRule ^GoHere/index.php$ GoHere/index.php [R,NC]
注意事项: 我意识到上面的代码不起作用。我尝试了许多不同的调用。昨天我花了无数个小时尝试从我有限的 mod_rewrite 知识库中提取的每一个聪明的解决方案。根据我对 mod_rewrite 的理解,我认为它做不到。我理解它不是预处理的目的。至少不是我在 Apache 网站上能找到的任何东西。有人告诉我,如果我可以梦想它,它就可以实现:) 我想知道是否有人知道如何让它发挥作用。
您为什么要这样做?: 因为我愿意。不,我希望将 URL 返回给用户以进行进一步处理。
哎呀
【问题讨论】:
-
我建议您重新考虑您的 URL 模式。想出一个好的“公共” URL 架构,并使用 mod_rewrite 将它们重写为您的“内部”架构。你说的是疯狂。
-
你不需要转义
/字符; Apache 不使用类似 Perl 的分隔符。但是.需要转义。
标签: apache .htaccess mod-rewrite url-rewriting