2012-10-06 18 views
3

我試圖限制訪問在nginx的的Magento管理區域限制在Nginx的訪問Magento管理區。我們用來做阿帕奇以下,但不知道怎麼做,在Nginx的:通過IP

RewriteCond %{REMOTE_ADDR} !^116\.71\.8\.191  
RewriteCond %{REQUEST_URI} admin [NC] 
RewriteRule ^(.*)$/[F,L] 

問候,

史蒂夫

回答

3
location /admin { 
    allow 116.71.8.191; 
    # drop rest of the world 
    deny all; 
} 

而且不要忘記重裝規則

/usr/local/nginx/sbin/nginx -s reload 

更多信息可在這裏找到:http://www.cyberciti.biz/faq/linux-unix-nginx-access-control-howto/

+0

不知爲什麼它不工作。 – user1538621

+0

所以問題在於它沒有被https限制。你能告訴我如何限制它爲SSL – user1538621

+0

它應該爲http和https工作。你可以完全配置'/ admin'位置嗎? 'fastcgi_param HTTPS';'在那裏? – Zyava

0

只需添加在

Location/{ 

if ($remote_addr !~ "^116.71.8.191"){ 
    set $rule_0 1$rule_0; 
} 
if ($uri ~* "admin"){ 
    set $rule_0 2$rule_0; 
} 
if ($rule_0 = "21"){ 
    return 403; 
    break; 
} 
0

對於Magento的2清漆方案

location ~* ^/(index\.php/admin|admin) { 

allow 1.2.3.4; 

try_files $uri $uri/ /index.php?$args; 
location ~* \.php$ { try_files /dummy @proxy; } 
deny all; 
}