我正在使用wordpress,我正在使用.htaccess,但我并不真正了解它的功能。
场景如下:当用户试图从上传目录(例如:http://[localhost]/wordpress/uploads/video.mp4)访问文件时,他被重定向到一个php页面,该页面决定用户是否具有下载/查看该文件的权限(例如,重定向到以下内容:http://[localhost]/wordpress/serve.php?filename=video.mp4)。
有人知道我应该怎么处理.htaccess吗?
.htaccess文件应该放在哪个目录中?
发布于 2013-04-16 06:26:50
为此,您可以使用WordPress根.htaccess文件,也可以在上传目录中创建一个。我建议你坚持使用你已经在WordPress中使用的文件。
/wordpress/.htaccess 修订的内容
RewriteBase /wordpress/
# ^ your base should already be set - if it hasn't, put this just under RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^uploads\/(.*) serve.php?filename=$1 [R,L]PHP注意:如果你不想重定向,你仍然可以把它隐藏在实际的文件名下,它仍然会返回PHP响应。您可以通过删除R标志来完成此操作。(这将使最初请求的URL保留在地址栏中。)
编辑:根据您的评论,并显示您的.htaccess文件所在的位置,尝试以下操作:
RewriteBase /wordpress/wp-content/uploads/
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^(.*) /wp-content/themes/fun&share/serve.php?filename=$1 [R,L]编辑2:我很抱歉,我没有解释RewriteBase。请参考下面的代码:
RewriteEngine On
RewriteBase /wordpress/wp-content/uploads/
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^(.*) ../themes/fun&share/serve.php?filename=$1 [R,L]此.htaccess文件必须放置在您的uploads folder中。
发布于 2013-04-16 10:11:56
尝试将这些规则添加到/wordpress/uploads目录中的htaccess文件:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^(.*)$ /wordpress/serve.php?filename=$1 [L]https://stackoverflow.com/questions/16025218
复制相似问题