2010-09-06 20 views
25

He configurado un sitio que está actualmente en proceso. Estoy usando una puerta de enlace SMS externa que necesita acceso a una secuencia de comandos en mi servidor. Sin embargo, he configurado una autenticación básica de nombre de usuario y contraseña para usuarios normales, pero la puerta de enlace SMS no puede superar eso.Permitir dirección IP sin autenticación

¿Cómo puedo permitir que una única IP pase a través de la autenticación sin autenticarse y denegar a todos los demás usuarios que no están autenticados?

Aquí es mi .htaccess archivo:

Order allow,deny 
Allow from all 
AuthType Basic 
AuthUserFile /www/.site_htpasswd 
AuthName "Protected Area" 
require user admin 

Respuesta

18

ACTUALIZACIÓN: Como de Apache 2.4, Order, Allow, Deny y Satisfy directivas should not be used anymore. Por lo que la nueva sintaxis es:

AuthType Basic 
AuthUserFile /www/.site_htpasswd 
AuthName "Protected Area" 

<RequireAny> 
    Require ip 1.2.3.4 
    Require valid-user 
</RequireAny> 
2

Intente cambiar primeras 2 líneas a

Order deny,allow 
Deny from all 
Allow from 1.2.3.x 

Reemplazar su IP deseada en el Allow from

+0

Esto sólo me da un 403 Prohibido:/ –

+0

No importa que, tuve un error ..: P, pero, ahora sólo me mantiene pidiendo autenticación, y no quieren para autenticarme cuando ingrese mis credenciales. –

43

Me acabo de enterar, con la ayuda de Josek:

Order deny,allow 
Deny from all 
AuthType Basic 
AuthUserFile /www/.site_htpasswd 
AuthName "Protected Area" 
require valid-user 
Allow from 1.2.3.4 
Satisfy Any 
+1

¿Para qué son las versiones de Apache y mod_auth? – LeMike

+1

Esto debería funcionar para Apache 2.2. Apache 2.4 tiene [nueva sintaxis] (http://stackoverflow.com/a/27209938/878514). – fracz