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

Apache Discussion :

Apache et cgi-bin


Sujet :

Apache

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 225
    Par défaut Apache et cgi-bin
    bonjour,

    je pense avoir qque soucis avec apache et la configuration cgi

    voici le paramétrage que j'ai trouvé sur le net et mis en place pour faire tourner cgi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    ScriptAlias /cgi-bin/ "c:/wamp/bin/apache/apache2.2.8/cgi-bin/"
     
    <Directory "c:/wamp/bin/apache/apache2.2.8/cgi-bin/">
    d'origine, je n'ai rien modifié.
    </Directory>
    j'ai installé strowberry perl
    et j'ai lancé le script démo printenv.pl via l'url : http://localhost/cgi-bin/printenv.pl

    ça marche.

    quand je tente de lancer le script system.pl qui contient juste ligne :

    system ("psql -d posgis -U postgres < c:/query.sql");

    j'ai l"erreur apache : psql n'est pas reconnu en tant que commande interne...

    si je lance le script via la console :

    perl.exe c:/...../cgi-bin/system.pl ça marche.

    je ne comprend pas bien ce qu'il ce passe, qqu'un peut 'il m'aider ?

    merci d'avance,

    n

  2. #2
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    Essaie en mettant le chemin complet vers la commande psql :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    system ("C:\\...\\psql -d posgis -U postgres < c:/query.sql");

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 225
    Par défaut
    merci mac, j'ai essayé dans les deux sens, j'ai tjours l'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    [Thu Apr 23 21:24:20 2009] [error] [client 127.0.0.1] Premature end of script headers: system.pl
    [Thu Apr 23 21:24:20 2009] [error] [client 127.0.0.1] 'C:\\Program' n'est pas reconnu en tant que commande interne\r
    [Thu Apr 23 21:24:20 2009] [error] [client 127.0.0.1] ou externe, un programme ex\x82cutable ou un fichier de commandes.\r
    [Thu Apr 23 21:24:20 2009] [error] [client 127.0.0.1] 
    [Thu Apr 23 21:25:08 2009] [error] [client 127.0.0.1] Premature end of script headers: system.pl
    [Thu Apr 23 21:25:08 2009] [error] [client 127.0.0.1] 'C://Program' n'est pas reconnu en tant que commande interne\r
    [Thu Apr 23 21:25:08 2009] [error] [client 127.0.0.1] ou externe, un programme ex\x82cutable ou un fichier de commandes.\r

  4. #4
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    Il faut mettre le chemin façon DOS en 8 caractères et sans espaces. Program Files devient progra~1.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 225
    Par défaut
    alors maintenant c'est différent, il mouline depuis 5 minutes.
    voila ce que j'ai dans le log :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    [Thu Apr 23 22:15:40 2009] [error] [client 127.0.0.1] Premature end of script headers: system.pl
    [Thu Apr 23 22:16:19 2009] [error] [client 127.0.0.1] Premature end of script headers: system.pl
    [Thu Apr 23 22:16:54 2009] [error] [client 127.0.0.1] Premature end of script headers: system.pl
    et voila ce que j'ai dans mon fichier system.pl :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     
    #!C:/strawberry/perl/bin/perl.exe
    system ("C://progra~1//PostgreSQL//8.3//bin//psql.exe -d postgis -U postgres < c://query.sql");
    exit(0);

  6. #6
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    Aucune idée, désolé. Essaie peut-être avec une commande plus simple, genre dir, pour vérifier qu'un CGI avec system se passe bien. Mais pour la suite, je ne sais pas du tout.

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 225
    Par défaut
    merci pour ton aide mac, meme si ce n'est pas resolu.
    ouai ça marche bien avec dir, alors qu'avec psql ça mouline pendant des minutes....
    pourquoi je ne suis pas confronté au timeout ?

    bonne soiree, pour moi c'est cuit 2 jours a chercher, j'en ai ras le bol !
    a+

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 225
    Par défaut
    j'ai parlé trop vite, ca y ' est ca marche !!!!
    la seule chose que j'ai modifié , c'est
    1 rajouter un entete
    2 recreer le fichier avec notepad2 (vu l'erreur : premature end of...)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    #!C:/strawberry/perl/bin/perl.exe -W
     
    print "Content-type: text/plain; charset=iso-8859-1\n\n";
     
    system ("C://progra~1//PostgreSQL//8.3//bin//psql.exe -d postgis -U postgres < c://query.sql");
     
     
    exit(0);
    encore merci a toi mac, sans toi j'aurai jeter l'eponge
    allez cette fois, au dodo!

    a+
    n

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 225
    Par défaut
    j'ai parlé trop vite ou alors le script est hyper lent a tourner
    j'ai l'erreur non bloquante (query.sql s'execute tres bien) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
    [Thu Apr 23 22:50:40 2009] [error] [client 127.0.0.1] 
    [Thu Apr 23 22:56:23 2009] [error] [client 127.0.0.1] (70007)The timeout specified has expired: ap_content_length_filter: apr_bucket_read() failed
    mais la je n'ai plus le courage je regarderai demain, certianment une connerie de meme acabit...

    encore merci,
    n

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 225
    Par défaut
    j'ai toujours cette erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    [Fri Apr 24 10:15:47 2009] [error] [client 127.0.0.1] (70007)The timeout specified has expired: ap_content_length_filter: apr_bucket_read() failed
    Si j'ai bien compris cela veut dire que le script est trop long a s'executer et que je depasse le timeout (300) d'apache.

    ce que je ne comprend pas c'est que ce script quand je le lance depuis la console ne prend pas de temps (je fait juste un insert dans une table test).
    pourquoi ca mouline ?

    de maniere plus generale sur le fonctionnement des scripts cgi, apache ne peut il pas lancer le script et reprendre la main, pourquoi attend il un retour ?

    merci d'avance,

    n

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 225
    Par défaut
    bonjour

    j'ai testé avec la commande exec , mais j'ai toujours le même message d'erreur:
    je depasse le timeout d'apache....
    svp j'ai vraiment besoin d'aide!
    merci

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

Discussions similaires

  1. Réponses: 11
    Dernier message: 20/04/2010, 16h57
  2. apache et cgi-bin
    Par djibril dans le forum Apache
    Réponses: 2
    Dernier message: 08/04/2006, 18h07
  3. CGI-BIN formulaire pl
    Par gregbart dans le forum Web
    Réponses: 6
    Dernier message: 19/12/2005, 08h44
  4. [web] Apache Cgi-Bin
    Par Tommy Jean dans le forum Web
    Réponses: 8
    Dernier message: 23/08/2004, 19h46
  5. Réponses: 6
    Dernier message: 28/10/2002, 12h34

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