IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP Discussion :

detecter erreur 404


Sujet :

ASP

  1. #1
    Membre actif Avatar de roots_man
    Inscrit en
    Août 2004
    Messages
    328
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 328
    Points : 282
    Points
    282
    Par défaut detecter erreur 404
    Heeep, voila j'aimerais savoir si quelqu'un saurais comment faire pour detecter un lien qui est mort en asp... je ne sais pas quoi faire comme test

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <%if ("http://www.google.ch") = erreur404 then
    response.write("Lien pas valide")
    Else
    Response.write("Lien valide")
    end if%>
    si quelqu pourrais m'aider pour que je raisonne correctement..

    Merci

  2. #2
    Membre habitué Avatar de thor22
    Inscrit en
    Août 2004
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Août 2004
    Messages : 150
    Points : 155
    Points
    155
    Par défaut
    Tu veux détecter si une page distante fait une erreur 404 ou bien c'est une page sur ton serveur?
    Ou bien tu veux détecter si un usager obtient une erreur 404 en visitant ton site??

    Dans le 1er cas, pour une page sur un serveur distant, tu peux faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    WinHttp.WinHttpRequest.5 
    Set oHttp = CreateObject("WinHttp.WinHttpRequest.5") 
    oHttp.Open "GET", "http://www.monsite.com/monfichier.asp" 
    oHttp.SetCredentials "username", "password", 0 'Si ta page est protégée par un mot de passe 
    oHttp.Send 
    site = oHttp.ResponseText 
    Set oHttp = Nothing
    et vérifier si "site" contient la chaîne "404".

    Dans le 2e cas, pour un fichier sur ton serveur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    set fso=server.CreateObject("scripting.FileSystemObject")
    response.write(fso.FileExists("C:\fichier.asp"))
    Dans le 3e cas, pour un utilisateur qui va sur ton site, dans IIS, tu peux configurer la page par défaut pour les erreur 404. Dans cette page, tu peux t'envoyer un courriel (ou faire une insertion dans une base de données) lorsque ça arrive.

  3. #3
    Membre actif Avatar de roots_man
    Inscrit en
    Août 2004
    Messages
    328
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 328
    Points : 282
    Points
    282
    Par défaut
    Nan c'est plutot la première solution : un lien externe.

    Mais si je met le code de la premiere solution il me donne une erreur.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Object required: 'WinHttp'
    il faut le déclarer comment ? est-ce qu'il faut un composant ??

    Merci

  4. #4
    Membre habitué Avatar de thor22
    Inscrit en
    Août 2004
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Août 2004
    Messages : 150
    Points : 155
    Points
    155
    Par défaut
    petite erreur dans le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dim WinHttp.WinHttpRequest.5

  5. #5
    Membre actif Avatar de roots_man
    Inscrit en
    Août 2004
    Messages
    328
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 328
    Points : 282
    Points
    282
    Par défaut
    désolé mé il y a encore une erreur..

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Expected end of statement
    line 2, column 11
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    la ligne 2 : dim WinHttp.WinHttpRequest.5
    Mais maintenant si je met
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dim WinHttp, WinHttpRequest
    ca serait pas comme ca ???

    pis si je met comme ca, il me met l'erreur suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveX component can't create object
    désolé de te pose toutes ces question... mais la j'ai vraiment aucune idée sur le code... j'ai jamais vu..

    Merci

  6. #6
    Membre habitué Avatar de thor22
    Inscrit en
    Août 2004
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Août 2004
    Messages : 150
    Points : 155
    Points
    155
    Par défaut
    Encore dans la lune.... Mais si tu as des problèmes avec cet objet, fait une recherche.

    Tu trouveras probablement ce que tu veux.
    Je ne fais que te proposer la piste.

  7. #7
    Membre actif Avatar de roots_man
    Inscrit en
    Août 2004
    Messages
    328
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 328
    Points : 282
    Points
    282
    Par défaut
    alors j'ai trouvé qqch avec l'objet xmlhttp.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    on error resume next 
    Dim objHttpRequest 
    Set objHttpRequest = Server.CreateObject("Microsoft.XMLHTTP") 
    objHttpRequest.open "GET","http://www.google.ch/saélfdkj.asp",False 
    objHttpRequest.send 
    objPage = objHttpRequest.responseText 
     
    if instr(lcase(objPage),"404")<>0 then 
      response.write("Existe pas!!") 
    else 
      response.write("Existe !!")
    end if 
     
    Set objHttpRequest = nothing
    Et ca a l'air de fonctionner correctement.

  8. #8
    Membre habitué Avatar de thor22
    Inscrit en
    Août 2004
    Messages
    150
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Août 2004
    Messages : 150
    Points : 155
    Points
    155
    Par défaut
    C'est donc [Résolu] ?

  9. #9
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    1 616
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 616
    Points : 3 966
    Points
    3 966
    Par défaut
    Citation Envoyé par roots_man
    alors j'ai trouvé qqch avec l'objet xmlhttp.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    on error resume next 
    Dim objHttpRequest 
    Set objHttpRequest = Server.CreateObject("Microsoft.XMLHTTP") 
    objHttpRequest.open "GET","http://www.google.ch/saélfdkj.asp",False 
    objHttpRequest.send 
    objPage = objHttpRequest.responseText 
     
    if instr(lcase(objPage),"404")<>0 then 
      response.write("Existe pas!!") 
    else 
      response.write("Existe !!")
    end if 
     
    Set objHttpRequest = nothing
    Et ca a l'air de fonctionner correctement.
    salut
    si je peux me permettre : tu devrais plutot utiliser la propriété status pour récupérer ton 404, parce qu'il peut y en avoir plusieurs des 404 dans ton responsetext, et ce ne sera pas forcément le statut http (corps de la page HTML, taille du fichier, ...)
    en plus ça t'oblige à traiter l'ensemble de la réponse HTTP, c'est pas forcément très intelligent.
    Enfin voir ici, un problème marginal que tu pourrais toi aussi rencontrer :
    http://www.developpez.net/forums/viewtopic.php?t=262762

  10. #10
    Membre actif Avatar de roots_man
    Inscrit en
    Août 2004
    Messages
    328
    Détails du profil
    Informations forums :
    Inscription : Août 2004
    Messages : 328
    Points : 282
    Points
    282
    Par défaut
    oé merci bonne idée..

    tout est okay, merci de votre aide. 8)

    Bonne soirée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Configuration] erreur 404, url demandée ?
    Par mikyfpc dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 9
    Dernier message: 08/10/2004, 09h37
  2. [Apache-SSL] Erreur 404
    Par GLDavid dans le forum Apache
    Réponses: 2
    Dernier message: 08/09/2004, 17h12
  3. [struts][tomcat]erreur 404 suite à un forward
    Par minique dans le forum Struts 1
    Réponses: 3
    Dernier message: 06/09/2004, 10h11
  4. Check Url pour savoir si erreur 404 ou si le site existe
    Par Clément[Delphi] dans le forum Composants VCL
    Réponses: 2
    Dernier message: 07/08/2002, 13h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo