2012-03-19 17 views
7

Tengo una carpeta web para proteger con contraseña en mi sitio, estoy buscando esa carpeta en otro dominio usando Curl, lo que quiero es: cuando intento abrir la URL, debe preguntarme el nombre de usuario y contraseña, en lugar de pedirlo mostrar la "Autorización requerida".Curl para solicitar un nombre de usuario y contraseña

Ejemplo:

Si intento acceder a la "a" URL que me pide la contraseña nombre de usuario. Multa. pero no me pide el nombre de usuario y la contraseña en "b" (usando curl aquí).

¿Alguna idea?

En resumen: Quiero hacer Curl Preguntar por el usuario/Contraseña.

Saludos

No estoy seguro de si es posible o no? pero si es posible, por favor déjenme saber cómo, de lo contrario cerraré esto como "Inválido"

+1

¿Por qué no solo solicitar un inicio de sesión antes de usar Curl? –

+0

hmm eso sería genial, mi segundo dominio está alojado en un servidor Plesk, lo que no me permite tener htaccess allí ... y en segundo lugar, puede ser que no quiera tener ningún archivo de contraseña en mi segundo dominio o cualquier scripting ... – mahaidery

Respuesta

0

Gracias todos tus respuestas!

Esto es lo que necesito, ¡espero que ayude a alguien!

Para obtener la URL/Carpeta "contraseña protegida" a través de CURL, necesitamos proporcionar el nombre de usuario/contraseña en el CURL como un ejemplo @pizza dijo: Pero hay 2 cosas más.
1-) Necesitamos una indicación aquí.
2-) No deseamos HardCoded el nombre de usuario y la contraseña en el segundo dominio.

, colocaremos PHP_AUTH_USER y la solicitud de contraseña en la parte superior de la página, y luego pasaremos el argumento mediante CURL a la URL/carpeta de destino.

Sí, sé que es simple, pero en algún momento no se puede determinar las dimensiones correctas ...

+0

Esta respuesta NO debe aceptarse, donde ¿es la respuesta? ¿Cómo colocas PHP_AUTH_USER? ¡Una muestra con código sería genial para otros usuarios! ¡Esto es aún más confuso! – Cyborg

0

Puede usar cookies allí, creo. Los pasos serían:

  1. Si intenta hacer un curl "http://www.2nddomain.com/admin" sin cookies, puede devolverle un formulario de inicio de sesión html.
  2. La acción de su formulario apuntaría al 2do servidor y si las credenciales eran correctas, establezca la cookie allí y regrese (redireccione) al servidor 1.
  3. Y si vuelve a curl, podría verificar la cookie en el otro lado y en este caso, podría leer esa cookie y devolverle el resultado de la página de administración.
+0

Nopes, no devuelve el prompt de inicio de sesión ... ¡eso es lo que necesitaba! – mahaidery

+0

Ok, pero debe escribirlo usted mismo. usando php o lo que sea que tengas allí. –

1

para la protección de contraseña estilo .htaccess, puede codificar la contraseña de ID de usuario como en:

rizo -u ID de usuario: contraseña http: // .......

+0

hmm, que es un enfoque correcto, pero quiero una solicitud de contraseña, nunca quiero ingresar el nombre de usuario o contraseña en un archivo alojado en mi segundo dominio – mahaidery

+1

No estoy seguro acerca de su entorno, si lo hago en un script de shell. Es algo así como leer -p "Userid:" ID de usuario; leer -s -p "Contraseña:" passwd; curl -u $ userid: $ passwd http: // ...... – pizza

+0

Necesitamos una Petición http aquí ... en lugar del nombre de usuario codificado y la contraseña – mahaidery

21

Pruebe lo siguiente como:

curl -su 'user' <url> 

Se debe impulsar password para el usuario

+0

Intenté esto y me dice que no puede resolver el "nombre de usuario" del host. – Hippyjim

+0

Creo que esta debería ser la respuesta aceptada, funcionó para mí. – ibic

1

-H 'Autorización: Usuario básico: pase' usuario: pase debe ser codificado en base 64

Cuestiones relacionadas