Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.htaccess htaccess重写规则帮助_.htaccess - Fatal编程技术网

.htaccess htaccess重写规则帮助

.htaccess htaccess重写规则帮助,.htaccess,.htaccess,我需要为htaccess文件创建重写规则,该文件将重写URL,例如: http://archive.citylaw.org/bsa/2014/03.24.14/300-13-A.pdf 到 规则需要匹配任何链接,例如: http://archive.citylaw.org/bsa/<file-path> http://archive.citylaw.org/bsa/ 这是指向新位置的PDF文件的链接 http://archive.citylaw.org/wp-content/u

我需要为htaccess文件创建重写规则,该文件将重写URL,例如:

http://archive.citylaw.org/bsa/2014/03.24.14/300-13-A.pdf

规则需要匹配任何链接,例如:

http://archive.citylaw.org/bsa/<file-path>
http://archive.citylaw.org/bsa/
这是指向新位置的PDF文件的链接

http://archive.citylaw.org/wp-content/uploads/sites/24/bsa/<file-path>
http://archive.citylaw.org/wp-content/uploads/sites/24/bsa/
类似于:

RewriteRule ^(bsa\/.*) /wp-content/uploads/sites/24/$1 [R]
[R]告诉apache发送重定向,这样浏览器将更新其导航栏,通常这可以避免浏览器在重写时无法很好地处理非html文件

在Prix评论后更新,我确实忘记了.htaccess
第二次编辑

.htaccess
重写规则不以
/
开头,因此您的规则将失败,它们仅在虚拟主机内使用时以
/
开头,用户明确表示
.htaccess
。作为旁注,你不需要逃避
/
。对于逃避,是的,但我认为我太习惯逃避它了(对于其他人来说,在IMHO之后阅读更清楚)。感谢您的提醒,完全忘记了.htacces的特殊性,如果文件位于DocRootIts的/bsa目录中,您可以这样做,而不是
%{QUERY\u STRING}
,因此您不需要该条件,也不需要仅使用重写规则即可。@Prix您应该自己编写答案:)。我更习惯于反向代理模式下的vhost规则,真的不想因为别人的工作而得到感谢。这显然不是vhost问题,你只是在你的答案中添加了一些完全不需要的东西
RewriteCond%{QUERY\u STRING}^/bsa\/.$
,你所要做的就是删除斜杠。
RewriteRule ^(bsa\/.*) /wp-content/uploads/sites/24/$1 [R]