htaccess不允许根目录但允许其他网址
我为我们公司使用Xfilesharing,我需要阻止我们的内部IP范围192.168.230.1-225访问主上传页面并允许下载到每个IP。 使用以下规则将阻止主页面,但也会阻止其他页面。但是使用规则来允许下载会破坏重写规则。htaccess不允许根目录但允许其他网址
RewriteEngine on
RewriteRule ^$ /cgi-bin/index.cgi [L]
RewriteCond %{REMOTE_ADDR} ^192\.168\.230\.25[0-5]|2[0-4]\d|1?\d\d?$
RewriteRule ^([0-9A-Z]{12})/([^/]+)/?$ /cgi-bin/index.cgi?act=download1&id=$1&fname=$2 [L,QSA]
RewriteRule ^.*$ /error [R=302,L]
RewriteRule ^del\-([0-9A-Z]{12})\-([0-9A-Z]+)/.+$ /cgi-bin/index.cgi?del=$1-$2 [L]
RewriteRule ^admin$ /?act=admin [R]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([a-z0-9\-\_]+).html$ /cgi-bin/index.cgi?act=page&tmpl=$1 [L]
字面上的URL是http://www.example.com/MG4YBAOW18QH/3.png和规则:^([0-9A-Z]{12})/([^\/]+)$ /cgi-bin/index.cgi?act=download1&id=$1&fname=$2 [L]
让你的下载规则是这样的:
RewriteCond %{REMOTE_ADDR} ^192\.168\.230\.\d+
RewriteRule ^([0-9A-Z]{12})/([^/]+)/?$ - [F,NC]
RewriteRule ^([0-9A-Z]{12})/([^/]+)/?$ /cgi-bin/index.cgi?act=download1&id=$1&fname=$2 [L,QSA,NC]
使用你的重写我仍然可以访问这两个页面,并给出了图像和CSS的重定向循环。我更新了我的主要重写与你 – calculataur 2014-09-24 08:16:20
你仍然可以访问'http: // www.example.com/MG4YBAOW18QH/3.png'来自'192.168.230.25' IP?检查你从Apache日志获得的IP是什么? – anubhava 2014-09-24 08:23:04
我的IP地址是192.168.230.1 – calculataur 2014-09-24 08:31:05
什么是你的上传页面的网址是什么? – anubhava 2014-09-24 07:38:30
此规则与下载链接匹配:RewriteRule ^([0-9A-Z] {12})/([^ \ /] +)$ /cgi-bin/index.cgi?act=download1&id=$1&fname=$2 [ L]和文字是site.com/MG4YBAOW18QH/3.png – calculataur 2014-09-24 07:45:36