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

Web Perl Discussion :

Error 404 [CGI]


Sujet :

Web Perl

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Octobre 2004
    Messages
    345
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 345
    Par défaut Error 404 [CGI]
    Salut tout le monde,
    (Debutant).
    j'ai crée un formulaire (hh.html) et un fichier perl (script.pl)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <html>
    <body>
    Rentrez votre prénom : <BR>
    <FORM NAME="form" ACTION="cgi-bin/script.pl"
    METHOD="POST">
    <INPUT TYPE="text" NAME="prenom">
    <INPUT TYPE="submit" VALUE="Envoyer">
    </FORM>
      </body>
    </html>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    #!C:/perl/bin/perl.exe -w
    use CGI;
    use strict;
    my($cgi) = new CGI;
    print "Content-type: text/html\n\n";
    my($prenom) = $cgi->param("prenom");
    print "salut tout le monde je suis <b>".$prenom."</b>";
    quand j'envoie avec le formulaire un nom (hhhhh) il me sort une page avec l'erreur suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     Error 404: Object not found
    The requested URL was not found on this server.
    besoin d'aide SVP.
    Merci.

  2. #2
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 822
    Par défaut
    J'ai rajouté [CGI] dans ton titre, c'est plus explicite.
    T'es sous quel OS???? As tu mis ton script perl dans le repertoire cgi-bin?

  3. #3
    Membre expérimenté
    Avatar de GLDavid
    Homme Profil pro
    Head of Service Delivery
    Inscrit en
    Janvier 2003
    Messages
    2 889
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Head of Service Delivery
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 889
    Par défaut
    Bien, mon jeune Padawan !
    Tu commences à maîtriser la Force.
    Mais je voudrais savoir en plus quel serveur Web tu utilises nah_wah ?

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code :tagcode: ni le tag :resolu:

    Je ne répond à aucune question technique par MP.

  4. #4
    Membre éclairé
    Inscrit en
    Octobre 2004
    Messages
    345
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 345
    Par défaut
    resalut;
    je suis windows xp (sp2).
    mon script est dans le chemin suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    c:\www\apache2\cgi-bin\script.pl
    j'ai installe Apache2.

  5. #5
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 822
    Par défaut
    essaye ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    #!C:/perl/bin/perl.exe -w 
    use CGI; 
    use strict; 
    my($cgi) = new CGI; 
    $cgi->header();
    $cgi->start_html( -title => 'Le titre'); 
    my($prenom) = $cgi->param("prenom"); 
    print "salut tout le monde je suis <b>".$prenom."</b>";
    sinon, c'est peut etre dû à ton serveur apache

  6. #6
    Membre éclairé
    Inscrit en
    Octobre 2004
    Messages
    345
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 345
    Par défaut
    resalut,
    toujours le meme probleme,juste une autre question j'ai apache et Enginesite webserver qui sont tout 2 demarre le probleme pourrai t-il venir de ce point

  7. #7
    Membre expérimenté
    Avatar de GLDavid
    Homme Profil pro
    Head of Service Delivery
    Inscrit en
    Janvier 2003
    Messages
    2 889
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Head of Service Delivery
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 889
    Par défaut
    2 serveurs web ?
    On va partir du principe que tu es sous Apache2 et qu'il est fonctionnel (l'autre doit utiliser un autre port, du moins je suppose). Ca me donne l'idée de préparer un nouvel article comme ça.
    Bon, revenons à ton problème. Il faut que tu consultes le fichier de configuration d'Apache 2.
    Sous Unix, par défaut, les scripts CGI doivent être placés dans /usr/lib/cgi-bin et sont accessibles via l'URL : http://localhost/cgi-bin/toto.pl par exemple.
    Regardes donc dans ton arborescence Apache si tu as un tel répertoire cgi-bin et places y ton script. N'oublies pas de modifier ton lien dans la page HTML de départ.
    Normalement, ça devrait aller.

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code :tagcode: ni le tag :resolu:

    Je ne répond à aucune question technique par MP.

  8. #8
    Membre expérimenté
    Avatar de GLDavid
    Homme Profil pro
    Head of Service Delivery
    Inscrit en
    Janvier 2003
    Messages
    2 889
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Head of Service Delivery
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 889
    Par défaut
    Un petit PS : il est aussi possible d'exécuter des CGI dans le répertoire par défaut d'Apache. Dans le fichier httpd.conf, il faut ajouter au répertoire execCGI, je crois.

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code :tagcode: ni le tag :resolu:

    Je ne répond à aucune question technique par MP.

  9. #9
    Membre éclairé
    Inscrit en
    Octobre 2004
    Messages
    345
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 345
    Par défaut
    resalut,
    pour apache2 j'ai suivi les instructions fourni dans developpez.com,
    dois je tout desinstaller puis recommencer sachant que j'utilise Enginesite perl 3 qui par defaut a un serveur integrer.

  10. #10
    Membre expérimenté
    Avatar de GLDavid
    Homme Profil pro
    Head of Service Delivery
    Inscrit en
    Janvier 2003
    Messages
    2 889
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Head of Service Delivery
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 889
    Par défaut
    Tu peux être plus précis sur ce que tu as fait ? Est-ce que ça marche ?
    Ce que je te donne comme exemple ne nécéssite pas de désinstaller Apache2, au contraire, tu as besoin tout au plus de relancer Apache2.
    Pour que ce soit plus parlant, voici la configuration de mon répertoire dans Apache2 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
     
    NameVirtualHost *
    <VirtualHost *>
    	ServerAdmin webmaster@localhost
     
    	DocumentRoot /var/www/Job/
    	#DirectoryIndex index.html index.cgi index.pl index.php index.xhtml
    	<Directory />
    		Options FollowSymLinks
    		AllowOverride None
    	</Directory>
    	<Directory /var/www/Job/>
    		Options Indexes FollowSymLinks MultiViews
    		AllowOverride None
    		Order allow,deny
    		allow from all
    		# This directive allows us to have apache2's default start page
                    # in /apache2-default/, but still have / go to the right place
                    # Commented out for Ubuntu
                    #RedirectMatch ^/$ /apache2-default/
    	</Directory>
     
    	<Directory /var/www/Job/dump/>
    		allow from all
    	</Directory>
     
    	ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    	<Directory "/usr/lib/cgi-bin">
    		AllowOverride None
    		Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
    		Order allow,deny
    		Allow from all
    	</Directory>
     
    	ErrorLog /var/log/apache2/error.log
     
    	# Possible values include: debug, info, notice, warn, error, crit,
    	# alert, emerg.
    	LogLevel warn
     
    	CustomLog /var/log/apache2/access.log combined
    	ServerSignature On
     
    	#DirectoryIndex index.html index.cgi index.pl index.php index.xhtml
     
        Alias /doc/ "/usr/share/doc/"
        <Directory "/usr/share/doc/">
            Options Indexes MultiViews FollowSymLinks
            AllowOverride None
            Order deny,allow
            Deny from all
            Allow from 127.0.0.0/255.0.0.0 ::1/128
        </Directory>
     
    </VirtualHost>
    Tu peux y voir cette ligne intéressante dont je t'ai parlé plus haut :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
    	<Directory "/usr/lib/cgi-bin">
    		AllowOverride None
    		Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
    		Order allow,deny
    		Allow from all
    	</Directory>
    Donc, pour ajouter l'exécution de CGI dans ton répertoire par défaut, tu devras y ajouter cette ligne : Options ExecCGI
    Puis, tu relances Apache2 et ça devrait rouler.

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code :tagcode: ni le tag :resolu:

    Je ne répond à aucune question technique par MP.

  11. #11
    Membre éclairé
    Inscrit en
    Octobre 2004
    Messages
    345
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 345
    Par défaut
    resalut,
    1-merci pour votre aide .
    2-ma faute corrigée :
    les fichiers (*.pl) doivent etre enrgistre dans (www/apache2/cgi-bin) et pour les fichiers (*.html) doivent etre obligatoirement dans (www/votresite) pour qu'apache les traite.

    Remarque pour les moderateurs de ce site merveilleux :faire un article sur la configuration (Perl et apache) ca serai genial.
    Remerci.

  12. #12
    Membre expérimenté
    Avatar de GLDavid
    Homme Profil pro
    Head of Service Delivery
    Inscrit en
    Janvier 2003
    Messages
    2 889
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Head of Service Delivery
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 889
    Par défaut
    Ok, tant mieux si c'est résolu.
    Pas de problème pour l'article, j'avais le projet de le faire, ton post a été le détonateur, vu la fréquence de cette question.

    @++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code :tagcode: ni le tag :resolu:

    Je ne répond à aucune question technique par MP.

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

Discussions similaires

  1. HTTP Error 404 - File or Directory not found
    Par kince dans le forum IIS
    Réponses: 0
    Dernier message: 17/09/2007, 16h59
  2. iis 5 error 404 asp.net
    Par hoda dans le forum IIS
    Réponses: 2
    Dernier message: 12/02/2007, 19h34
  3. Besoin d'aide Jboss-struts error 404
    Par Dx_ter dans le forum Wildfly/JBoss
    Réponses: 1
    Dernier message: 24/01/2007, 20h20
  4. Error 404 en lecture de fichier..
    Par Nemesys dans le forum Tomcat et TomEE
    Réponses: 4
    Dernier message: 15/01/2007, 10h42
  5. Internal Server Error : Script CGI
    Par DarkBlue3000 dans le forum Apache
    Réponses: 7
    Dernier message: 11/08/2006, 14h27

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