My question is, what if I don’t have Chrome/Firefox on? How can I do
the equivalent test via the terminal? I tried ping
x.x.x.x/directory/index.php
but it doesn’t work that way.
O uso de ping
nunca funcionaria. Todo ping
é enviar / receber pacotes ICMP de um endereço de rede. Assim, no seu exemplo, a única coisa que você poderia realmente fazer "ping" é ping x.x.x.x
com o restante da URL ( /directory/index.php
) apenas sufocando ping
ao tentar resolver a URL inteira como se fosse um nome de host. O erro seria algo como:
ping: cannot resolve x.x.x.x/directory/index.php: Unknown host
Mas, para o tipo específico de teste / depuração do servidor da Web que você está procurando, geralmente uso curl
mas especificamente eu uso curl -I -L
, que irá retornar apenas cabeçalhos de resposta básicos e seguir qualquer redirecionamento de local que o servidor possa ter no lugar; o -I
sinalizador diz curl
apenas para mostrar o cabeçalho e -L
sinalizador diz curl
para seguir qualquer redirecionamento de servidor que encontrar.
Por exemplo, se eu executar este comando curl -I -L
em google.com
:
curl -I -L google.com
Eu recebo os seguintes cabeçalhos de resposta:
HTTP/1.1 301 Moved Permanently
Location: http://www.google.com/
Content-Type: text/html; charset=UTF-8
Date: Mon, 24 Aug 2015 02:16:32 GMT
Expires: Wed, 23 Sep 2015 02:16:32 GMT
Cache-Control: public, max-age=2592000
Server: gws
Content-Length: 219
X-XSS-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN
HTTP/1.1 200 OK
Date: Mon, 24 Aug 2015 02:16:32 GMT
Expires: -1
Cache-Control: private, max-age=0
Content-Type: text/html; charset=ISO-8859-1
P3P: CP="This is not a P3P policy! See http://www.google.com/support/accounts/bin/answer.py?hl=en&answer=151657 for more info."
Server: gws
X-XSS-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN
Set-Cookie: PREF=ID=1111111111111111:FF=0:TM=1440382592:LM=1440382592:V=1:S=5ToXkoBHyK2BAjyf; expires=Thu, 31-Dec-2015 16:02:17 GMT; path=/; domain=.google.com
Set-Cookie: NID=70=VKM1D8HeCMlye1YjMDYSqPlyIpPHKkitAor--wiqYznamENfNig69ZBW5oBgIR7wOFzVaUB6i4WKj-tqa2WcqbOCeVTc0hB4xQWQzBxpNazPp_20dBiU4in0wIop8mhz; expires=Tue, 23-Feb-2016 02:16:32 GMT; path=/; domain=.google.com; HttpOnly
Transfer-Encoding: chunked
Accept-Ranges: none
Vary: Accept-Encoding
Note que há dois cabeçalhos retornados:
-
HTTP/1.1 301 Moved Permanently
-
HTTP/1.1 200 OK
Isso é útil não apenas para testes do servidor Apache, mas também é útil para depurar mod_rewrite
reescrever regras e tal.
Esse método curl -I -L
é muito mais útil e eficiente do que usar um navegador visual como o Chrome ou o Firefox, pois esses programas são projetados para otimizar a velocidade de navegação armazenando conteúdo em cache. O que significa que você pode fazer um ajuste no seu servidor Apache por um segundo, mas o navegador visual não mostrará necessariamente a alteração imediatamente, a menos que você limpe o cache ou force a página a recarregar algumas vezes. O curl -I -L
mostra exatamente o que o servidor está fazendo em resposta à sua solicitação, exatamente o que você deseja / precisa ao depurar as configurações do servidor.