自从我使用 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
提前感谢能够确认并提供出色答案的任何人!
答案 0 :(得分:2)
从RewriteRule
删除前导斜杠:
RewriteEngine on
RewriteRule ^mylong/uri/contact/path/?$ /myForm.php [L,NC]
每个目录指令 .htaccess
,Apache从RewriteRule
URI模式中剥离当前目录路径(从而导致斜杠)。