Generalidades
Este artículo explica cómo utilizar la herramienta de línea de comandos curl en DreamHost.
Antecedentes
cURL es un software gratuito que permite realizar transferencias entre servidores. El proyecto cURL ofrece dos subproyectos:
- curl — Esta es la herramienta de línea de comandos que puedes ejecutar en tu computador local o en tu servidor de DreamHost. Ofrece varias opciones de comando para que envíes y recibas datos. curl usa 'libcurl'.
- libcurl — Esta es una biblioteca que admite muchos protocolos diferentes. Es muy común que el lenguaje de programación PHP use esta biblioteca. Revisa el Manual de cURL para más detalles:
Requisitos previos
Este artículo asume que has creado un usuario shell y puedes iniciar sesión en tu servidor a través de SSH.
Correr comandos de curl
Las siguientes secciones proporcionan comandos comunes que puedes utilizar con tu sitio web.
Ver la versión de curl instalada
Run the following to display the version of curl your shell is using.
[server]$ curl --version
Ver el código de una página específica
Esto devuelve el código fuente de una página específica.
[server]$ curl https://example.com
Guarda el código de una página web específica en un archivo nuevo
Para guardar el código fuente en un nuevo archivo, utiliza el indicador -o. Esto utiliza el carácter "o" minúscula. Asegúreat de cambiar example.com-CODE por el nuevo archivo en el que está guardando.
[server]$ curl -o example.com-CODE http://example.com
Guardar en un archivo con el mismo nombre
Si no deseas guardar en un nuevo nombre de archivo, puedes guardarlo en un archivo que sea igual a la página a la que estás accediendo. Por ejemplo, si estás accediendo a example.com/index.html, esto creará un nuevo archivo titulado index.html con el código guardado. Usa el indicador -O con el carácter 'O' en mayúscula.
La sintaxis sería curl -O <website-url>
[server]$ curl -O https://example.com/index.html
Probar la conexión a un sitio web remoto
Utiliza la banderilla -v para ver los datos de conexión, luego el código completo de la página que ingresaste.
[server]$ curl -v https://wordpress.org/ * About to connect() to wordpress.org port 443 (#0) * Trying 66.155.40.250... connected * Connected to wordpress.org (66.155.40.250) port 443 (#0) * successfully set certificate verify locations:
Lo anterior muestra una conexión exitosa. Si falla, verás la falla en la respuesta.
Revisar los encabezados del sitio web
Usa la banderilla -I para verificar los encabezados del sitio web.
[server]$ curl -I http://example.com/index.php HTTP/1.1 200 OK Date: Mon, 01 March 2024 20:55:09 GMT Server: Apache Last-Modified: Sun, 24 Sep 2023 22:45:30 GMT ETag: "2f3-5387d8a979b59" Accept-Ranges: bytes Content-Length: 755 Vary: Accept-Encoding Content-Type: text/html
Si deseas que no se muestre un encabezado específico, debes especificarlo manualmente utilizando el indicador -H. Por ejemplo, corre lo siguiente para verificar si gzip está habilitado:
[server]$ curl -I -H 'Accept-Encoding: gzip,deflate' http://example.com/index.php HTTP/1.1 200 OK Date: Mon, 01 March 2024 20:55:09 GMT Server: Apache Last-Modified: Sun, 24 Sep 2023 22:45:30 GMT ETag: "2f3-5387d8a979b59" Accept-Ranges: bytes Vary: Accept-Encoding Content-Encoding: gzip Content-Length: 428 Content-Type: text/html
Si gzip está habilitado, verás esta línea en el resultado:
Content-Encoding: gzip
Solución de problemas
Movido permanentemente
Es posible que cuando ejecutes curl en la URL de un sitio web, veas una respuesta Moved permanently. Por ejemplo:
[server]$ curl http://www.example.com <html> <title>301 Moved Permanently</title> </head><body> <h1>Moved Permanently</h1> <p>The document has moved <a href="http://example.com">here</a>.</p> </body></html>
Esto generalmente significa que la URL usa (o no) el subdominio 'www' antes. Intenta nuevamente con (o sin) www.
De lo contrario, puedes usar el indicador -L para redirigirte automáticamente.
[server]$ curl -L http://www.example.com