我有麻烦弄清楚如何工作重写,或者即使这是一个好主意。
为了便于组织,我想这样命名我的网页目录:
_fol.A
_fol.B
_fol.C
但是我希望,使用。htaccess mod_rewrite,人们访问
时可以到达上述文件夹http://example.com/Alpha
http://example.com/Bravo
http://example.com/Charlie
这是不是让我的生活过于复杂,这样我就可以把所有的文件夹都显示在一起?
我认为将文件夹分组在物理文件夹中是有效的。我这样做的产品,其中的url将是简单的产品名称/alpha,但他们是在一个产品/alpha文件夹。这将它们与网站上的其他东西很好地区分开来。
另一个评论回答了你是否过于复杂的问题,例如,考虑使用最终名称,并将它们放在文件夹中以便组织。
也就是说,要回答如何做到这一点,正如CBroe在评论中所说,RewriteMap
是答案。
这是一个不依赖于任何特定的url模式-产品本身就是整个url。rewritecsecond行确保它在映射文件中。根据需要保留或删除_fol前面的斜杠。
RewriteMap map_folder txt:d:somepathmap_folder.txt [NC]
# Map folders.
RewriteCond ${map_folder:$1|NOT_FOUND} !NOT_FOUND
RewriteRule (.*) /_fol.${map_folder:$1} [NC,L]
map_folder.txt文件的条目如下:
Alpha A
Bravo B
Charlie C
如果它是其他url,比如/help,那么它将无法在映射文件中找到,并且会被其他规则忽略。