Installation apache

guesmi -  
lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   -
<I></I>
salut
J'ai l'installation de apache sous linux et lors de l'exécution d'un script CGI sous mozilla le scipt apparait telle que il est S.V.P quels est la solution?
merci
Configuration: systeme d'exploitation

2 réponses

  1. crabs Messages postés 909 Statut Membre 507
     
    Salut,
    Plusieurs points à vérifier :
    - tu utilises bien une url qui passe par ton serveur apache ?
    - ton apache autorise le lancement des CGI pour le dossier contenant ton script ?
    - ton apache est configuré pour lancer les cgi ?
    - ton script à un nom correct (extension .cgi) et est exécutable ?

    Dans ton fichier httpd.conf (sa localisation dépend de ta distribution) :
    # permet le lancement de script cgi par apache si ils ont extension .cgi
    AddHandler cgi-script .cgi
    
    # pour un dossier particulier (et les sous-dossiers) autoriser le lancement
    # des cgi seul le +ExecCGI est important
    Alias /test/ "/le_dossier_en_question/"
    <Directory "/le_dossier_en_question">
      Options -Indexes FollowSymLinks MultiViews +ExecCGI
      AllowOverride None
      Order allow,deny
      Allow from all
    </Directory>
    

    Si ton cgi s'appelle premier.cgi, et est localisé dans /le_dossier_en_question
    l'url à mettre dans ton navigateur (sur la même machine) :
    http://localhost/test/premier.cgi

    A+, crabs
    0
  2. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut,

    le scipt apparait telle que il est Tu veux dire que c'est le code qui s'affiche?
    Peut être tu as oublié d'ajouté un en tête
    #! /usr/bin/perl -wT
    use strict;
    
    print "Content-Type: text/html\n\n"; # en-tête
    
    print <<HTML;
    <html>
     <head>
      <title>Bonjour</title>
     </head>
    <body>
    <p>Paragraphe 1</p>
    </body>
    </html>
    HTML
    

    Dans l'explications de crabs tu as la configuration de httpd.conf pour accepter les scripts cgi avec l'extension .cgi.

    Une autre possibilité c'est d'utilser la directive ScriptAlias
    #
    # ScriptAlias: This controls which directories contain server scripts.
    # ScriptAliases are essentially the same as Aliases, except that
    # documents in the realname directory are treated as applications and
    # run by the server when requested rather than as documents sent to the client.
    # The same rules about trailing "/" apply to ScriptAlias directives as to
    # Alias.
    #
    #ScriptAlias /cgi-bin/ "/usr/local/httpd/cgi-bin/"
    ScriptAlias /cgi-bin/ "/home/usercgi/cgi-bin/"
    #
    #
    #
    #
    # "/usr/local/httpd/cgi-bin" should be changed to whatever your ScriptAliased
    # CGI directory exists, if you have that configured.
    #
    #<Directory "/usr/local/httpd/cgi-bin">
    <Directory "/home/usercgi/cgi-bin">
        AllowOverride None
        Options None
        Order allow,deny
        Allow from all
    </Directory>
    

    Les options d'origine je les ai mis en commentaires.

    Exemple:
    <form action=/cgi-bin/script.pl .........>
    ou dans le navigateur http://localhost/cgi-bin/script.pl

    Tu n'est pas obligé de mettre une extension.
    <form action=/cgi-bin/script .........>
    ou dans le navigateur http://localhost/cgi-bin/script


    lami20j
    0