htaccess 可以重定向到父文件夹吗?

问题描述

我的域在我的用户文件夹中。我想在同一用户下从另一个文件夹向下提供一个文件。我试过这个:

RewriteRule ^test$ ../testfolder/test.txt [L]

但是 Apache 提供 400 Bad Request。 htaccess 能降到这样的级别吗?

解决方法

您可以使用此代码动态找出 PARENT 目录,然后重写为:

RewriteEngine On

# dynamically figure out parent directory using composite RewriteCond
RewriteCond $0#%{REQUEST_URI} ^([^#]*)#(.*)/[^/]+/\1$
RewriteRule .* - [E=PARENT:%2]

RewriteRule ^test$ %{ENV:PARENT}/test.txt [L,NC]

RegEx Demo