1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Script para dizer se certo site ta on ou off

Discussão em 'Dúvidas e Suporte Técnico - GNU/Linux & *nix' iniciada por Pmms, 20 de Junho de 2008. (Respostas: 7; Visualizações: 1536)

  1. Pmms

    Pmms Power Member

    Ola.

    Alguem me ajuda a criar um file para correr em linux.

    é que nem sei se é possivel...


    Apenas quero que quando correr esse script me diga se um certo endereço esta off ou ON.

    Esse endereço pode ser tipo o site da gogle.

    Apenas isso

    Sera que alguem sabe como dizer?
     
  2. tool

    tool Power Member

  3. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    Ou ligas-te lá na porta 80, fazer um "GET/ HTTP /1.0\n\n" e se obtiveres resposta, não só verificas que o site está on como tem o servidor a correr :P
    O problema no ping é que um site pode estar down mesmo estando a máquina up.
     
  4. Pmms

    Pmms Power Member

    O ping funciona na consola do telnet.

    Mas o server ta off, e la nao consegue pingar nao obtem resposta.
    Acho que isso varia um pouco, o melhor seria ver se o http tava activo.
    Assim dizia se ta OF ou ON mais correctamente.

    :007:
     
  5. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    Quando disse "tem o servidor a correr", referia-me ao httpd :)
    Uma máquina com o servidor HTTP desligado pode continuar a responder a pings, mas para ver se um site está up, é preciso mais do que um ping. O próprio Techzone, em muitos downtimes, não responde na porta 80 mas responde a pings.
    O OP perguntou como dá para dizer se um site está on ou off, por isso acho que o ideal era mesmo ligar lá por HTTP :)
     
  6. Pmms

    Pmms Power Member

    Que comandos posso usar por telnet ?

    :P
     
  7. Kayvlim

    Kayvlim Undefined Moderator
    Staff Member

    Olha, para veres se o google está up,
    C:\...> telnet www.google.pt 80

    Depois, apesar de não aparecer nada do que vais escrever,
    GET http://www.google.pt/ HTTP/1.0

    e dois enters (não te podes enganar em nada! O ideal é fazer copy/paste daqui e colar na linha de comandos).
    A resposta é a página inicial do Google :)

    É assim que eu veria se um site estava up através de um script. Em vez do link completo no "GET", podias pôr apenas /, mas se houver um IP partilhado para vários sites, lixas-te.
     
  8. countzero

    countzero Power Member

    Olá, se estiveres mesmo à rasca podes utilizar o código em baixo, foi retirado e adaptado daqui.

    Código:
    import httplib, urllib
    conn = httplib.HTTPConnection("www.umsitequalquer.com")
    conn.request("GET", "/")
    r1 = conn.getresponse()
    print r1.status
    if (r1.status == 200 or r1.status == 302):
        print("Site OK")
    else:
        print("Site KO")
    
    
    Cumps,
    JP
     

Partilhar esta Página