如何使用mod_rewrite伪造路径?基本上如何使用mod_rewrite在特定的url路径上提供平面文件?

时间:2015-03-04 21:50:27

标签: php apache .htaccess mod-rewrite

自从我使用 mod_rewrite 以来已经有一段时间了,所以我希望有人能够迅速阐明这一点。

基本上,我有一个平面动态PHP文件,称之为 myForm.php 。每当在路径 h.t.t.tp://mydomain.com/mylong/uri/contact/path 上对域进行请求时,我都需要提供此文件。如果用户去了那个位置,我需要我的apache服务器来提供 myForm.php 文件,这当然应该对用户不了解。他们仍然会将 / mylong / uri / contact / path 视为其位置地址,但所提供的文件来自webroot文件夹或其他位置,并且名为 myForm.php

使用 mod_rewrite 正确吗?

可以轻松实现

类似的东西:

RewriteEngine  on
RewriteRule    ^/mylong/uri/contact/path$  /myForm.php [PT]

这有用吗?取自: http://httpd.apache.org/docs/trunk/rewrite/remapping.html

提前感谢能够确认并提供出色答案的任何人!

1 个答案:

答案 0 :(得分:2)

RewriteRule删除前导斜杠:

RewriteEngine  on
RewriteRule ^mylong/uri/contact/path/?$ /myForm.php [L,NC]
每个目录指令

.htaccess,Apache从RewriteRule URI模式中剥离当前目录路径(从而导致斜杠)。