Apache sous linux

Résolu
magic charly Messages postés 122 Statut Membre -  
souamzohir Messages postés 184 Statut Membre -
Comment voir la configuration de Apache sur mon ordinateur (distribution linux fedora core 2) et visualiser l'endroit ou il est installé ?

j'ai trouvé un éxécutif httpd ds usr/sbin mais je ne sais pa si cela fait bien reference a apache.

Si de plus qqn saurait après cela comment le redemarrer en utilisant uniquement un terminal je suis preneur... :)
merci d'avance
A voir également:
  • Alexia organise un séminaire en ligne (webinaire) : elle cherche un outil qui permet de gérer les invitations, de relancer les invités et d’enregistrer le webinaire.
  • Apache open office gratuit - Télécharger - Suite bureautique
  • Linux reader - Télécharger - Stockage
  • Toutou linux - Télécharger - Systèmes d'exploitation
  • R-linux - Télécharger - Sauvegarde
  • Linux mint 22.1 - Accueil - Linux

33 réponses

souamzohir Messages postés 184 Statut Membre 28
 
slt je me suis chargé d'expliquer en partique à mes collégeus de classe ce que ça veut dire un serveur web sous lunix
( apache )
et j'ai trouvé que ca est un peu dificil svp aidez moi ....!!!
je veux un cours concernat ma charge svp !!! svp !!!
0
toto
 
/etc/init.d/apache* start
/etc/init.d/apache* stop
-1
magic charly Messages postés 122 Statut Membre 22
 
je n'ai pa de fichier /etc/init.d/apache :'(
-1
magic charly Messages postés 122 Statut Membre 22
 
Dal,

(toujours la qd j'ai besoin d'aide ) :)

j'ai regardé ds httpd.conf et il ya beaucoup de lignes load ... etc
mais aucune ne fait référence a un module de chargement de php.
Comment faire pour permettre le chargement des modules nécessaires?
-1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
magic charly Messages postés 122 Statut Membre 22
 
merci bcp asevere je garde tout ça bien au chaud ( ça pourrait me servir)
:p
-1
magic charly Messages postés 122 Statut Membre 22
 
J'ai ajouté le chargement du module php comme tu me l'as indiqué en ayant vérifié que ce module n'était pa préalablement ds le fichier httpd.conf :( et pourtant lorsque je redemarre apache avec /etc/httpd restart j'obtiens :


[root@iso-ww02 root]# /etc/init.d/httpd restart
*Stopping httpd: [ OK ]
Starting httpd: [Wed Jul 27 13:37:55 2005] [warn] module php4_module is already loaded, skipping
[ OK ]

les pop up qui marchient quand je les testais depuis ma station windows de developpement ne s'affichent toujours pas et les variables php associées a ces popup sont remplies par du vide. A savoir login/pwd
-1
asevere Messages postés 13521 Statut Webmaster 426
 
Voilà pourquoi il faut bien regarder tout le fichier de config :)

A un moment donné, tu as une ligne:
Include conf.d/*.conf

Donc, faut voir ce qu'il y a dedans:
# ls -l conf.d/*.conf
-rw-r--r--    1 root     root          814 Sep  3  2002 conf.d/perl.conf
-rw-r--r--    1 root     root          454 Feb 16 17:44 conf.d/php.conf
-rw-r--r--    1 root     root          988 Sep  2  2002 conf.d/python.conf
Ensuite tu visualises le fichier qui te plait:
# cat conf.d/php.conf
#
# PHP is an HTML-embedded scripting language which attempts to make it
# easy for developers to write dynamically generated webpages.
#

LoadModule php4_module modules/libphp4.so

#
# Cause the PHP interpreter handle files with a .php extension.
#
<Files *.php>
    SetOutputFilter PHP
    SetInputFilter PHP
    LimitRequestBody 0
</Files>

#
# Add index.php to the list of files that will be served as directory
# indexes.
#
DirectoryIndex index.php

Et là, tu vois que tout est normalement chargé.

Ton soucis avec php, il est où exactement ?
Les pages sont interprétées ? ou bien le texte qui s'affiche est du style:
<?php
echo "machin";
...
?>

0
asevere Messages postés 13521 Statut Webmaster 426
 
éventuellement donnes nous un bout de code qui passe mal si le php est correctement interprété dans certains cas.
0
[Dal] Messages postés 6373 Statut Contributeur 1 106
 
Salut Charly,

Si php est en place, que phpinfo() confirme que tu as tout ce dont tu as besoin, et que tu utilises le même navigateur pour afficher tes pages, c'est que ton code est bogué ou qu'il utilise une ressource, un répertoire, un fichier qui n'existe pas sous Linux (ou pas au même endroit ou avec le même nom, ou avec de mauvaises permissions), etc.

Débogues ton code :)

... qu'il s'agisse de php, html ou javascript d'ailleurs.

Comme asevere le suggère, tu pourrais poster les passages concernés.


Dal
-1
magic charly Messages postés 122 Statut Membre 22
 
merci du coup de main donc mon problème ne viendrait pas de là.
malgré tout, j'ai l'impression que le php est en partie interprété... (il effectue des boucles, éxécute des programmes externes) mais toutes les saisies "utilisateur" ne sont pas interprétées. Comme je l'ai précisé avant les variables qui étaient sensées etre complétées par l' utilisateur sont vides.
Ce code a été testé sur 3 navigateurs explorer firefox et netscape sur ma machine windows de developpement avec succès.

chose très amusante pas moyen de trouver un navigateur sur ma station linux. pas d'explorer, ni mozilla ni netscape ni meme avec 3 autres navigateurs un poil + exotiques .

Pourquoi en informatique tout est tjrs si compliqué ? Résoudre un problème c'est souvent en prendre consience de 2 nouveaux :p
-1
asevere Messages postés 13521 Statut Webmaster 426
 
Ca vient de ton code,

Comment accedes tu aux variables qui sont normalement remplies par l'utilisateur ?
0
magic charly Messages postés 122 Statut Membre 22
 
les variables utilisateurs sont rentrées par une pop up gérée par le navigateur.

ds les pages que je veux protéger je mets

<?php
include "auth.php";
requiert_authentification ('Groupe_autorisé');
?>

ds auth.php

j'ai une fonction qui permet de déterminer si la personne s'est déjà authentifiée et si ds ce cas son groupe d'utilisateur appartient a la liste des groupes autorisés a la page

function requiert_authentification ($groupe_autorisé) {

$Groupe='PA_TEST_GROUPE';
$Groupe=recherche_groupe($Groupe);

$commande= "echo -e ".$_SERVER['PHP_AUTH_USER'].' '.$_SERVER['PHP_AUTH_PW']."|
/usr/lib/squid/smb_auth -W isodelta -U 10.63.250.11 -S /netlogon/".$Groupe;

if (!isset ($_SERVER['PHP_AUTH_USER'])|| (strcmp(exec ($commande),"ERR\n")==0) || (recherche_groupe($Groupe) != 'WEB_IT')) {

/* cas d'erreur ou d'absence d'authentification */

erreur_authentification (); }else{
/* cas ss erreur d'authentification */
echo "<p> Bonjour, {$_SERVER['PHP_AUTH_USER']}.</p>";
}
echo("REQUIERT AUTH ");
}

sinon
il y erreur d'authentification et on appelle la fonction

function erreur_authentification () {

header('WWW-Authenticate: Basic realm="Test Authentication System"');
header('HTTP/1.0 401 Unauthorized');

echo "\n \n Vous devez entrer un identifiant et un mot de passe valide pour accèder à cette ressource.\n";
exit;
}

bon voilà je vous ai donc mis mon code (je me sens tout nu :p)
-1
asevere Messages postés 13521 Statut Webmaster 426
 
On oublie tout ce que je viens de taper, ce n'est pas une authentification par formulaire :)

Je rejette un oeil.
-1
asevere Messages postés 13521 Statut Webmaster 426
 
Quelle version de PHP a tu sur la fedora ?
(dans une console: php -v, sinon, dans le resultat de la fonction phpinfo())
-1
[Dal] Messages postés 6373 Statut Contributeur 1 106
 
Charly, quelques remarques et questions :

function requiert_authentification ($groupe_autorisé) {

Je retirerai l'accent du nom de ta variable... (quoique c'est sensé fonctionner si on en croit http://fr2.php.net/manual/fr/language.variables.php) mais cette variable n'est pas utilisée dans la suite du code concernant la fonction "requiert_authentification" .. alors à quoi sert cet argument ?

Après la ligne suivante :

$commande= "echo -e ".$_SERVER['PHP_AUTH_USER'].' '.$_SERVER['PHP_AUTH_PW']."|
/usr/lib/squid/smb_auth -W isodelta -U 10.63.250.11 -S /netlogon/".$Groupe;


mets un :

echo "<p>commande = $commande";
exit;


et dis nous ce qui s'affiche.

Si ce que tu essayes de faire c'est quelque chose comme çà :

http://fr.php.net/features.http-auth

(cf. exemple 34-1)

Il faut que tes fonctions "header" soient appelées avant, comme dans l'exemple, pour espérer que les variables 'PHP_AUTH_USER' et 'PHP_AUTH_PW' soient initialisées.

Il semblerait donc que tu n'utilises pas un formulaire html (mais l'authentification http).

Si par ailleurs tu utilises des formulaires html pour collecter des données, note bien qu'à partir de la version 4.10 de php les variables "postées" ou en "get" ne sont pas importées automatiquement, il faut les appeler avec $st = $_POST[st] ou $st= $_GET[st] suivant la façon dont le formulaire <form> les conçoit.


Dal
-1
asevere Messages postés 13521 Statut Webmaster 426
 
Le header est au bon endroit, il est renvoyé en cas d'echec, je ne pense pas que le probleme soit là, mais par contre, une version de PHP inferieur à 4.10 sur la Fedora core 2, c'est possible, et dans ce cas, pas de $_SERVER qui tienne, mais un bourrin
global $HTTP_SERVER_VARS :(
0
[Dal] Messages postés 6373 Statut Contributeur 1 106 > asevere Messages postés 13521 Statut Webmaster
 
Sinon...

Il me semble, sauf erreur, que

header('WWW-Authenticate: Basic realm="My Realm"');

est l'instruction qui provoque la demande d'authentification http.

Comme l'indique le manuel de php http://fr.php.net/features.http-auth :

il est possible d'utiliser la fonction header() pour demander une identification ("Authentication Required") au client, générant ainsi l'apparition d'une fenêtre de demande d'utilisateur et de mot de passe. Une fois que les champs ont été remplis, l'URL sera de nouveau appelée, avec les variables PHP_AUTH_USER, PHP_AUTH_PW et AUTH_TYPE contenant respectivement le nom d'utilisateur, le mot de passe et le type d'identification. Ces variables prédéfinies sont trouvées dans les tableaux $_SERVER et $HTTP_SERVER_VARS.

Donc, ce n'est qu'après avoir rencontré l'instruction header que la demande d'authentification est faite. Si l'utilisateur presse OK, la même page php est ensuite rechargée, avec les valeurs PHP_AUTH_USER, PHP_AUTH_PW et AUTH_TYPE initialisées.

.. d'où la boucle if - then - else proposée dans l'exemple 34-1 du manuel.

La gestion d'erreur de l'authenification devrait se faire une fois les variables PHP_AUTH_USER, PHP_AUTH_PW et AUTH_TYPE initialisées. Dans la fonction "erreur_authentification" les deux lignes de "header" seraient donc inutiles. Ces lignes devraient être placées en début de la page php (avec un if détectant si les informations n'ont pas déjà été envoyées) pour déclencher l'affichage de la boite.

En l'état, si la boite s'affiche chez Charly, c'est simplement parce que le test "!isset ($_SERVER['PHP_AUTH_USER'])" dans la fonction "requiert_authentification" est toujours faux... au premier chargement de la page.

Il est vrai qu'après une première validation cependant, les variables devraient être initialisées lors du rechargement. Mais il n'en demeure pas moins qu'il n'est pas logique de placer "header" à cet endroit.

Charly :

- peux tu répondre à la question d'asevere sur la version de ton php (est-ce bien le php-4.3.4 proposé sur FC2 ?)
- retirer les deux lignes "header" de ta fonction "erreur_authentification"
- dans les pages que tu veux protéger, mettre :
<?php 
include "auth.php"; 
if (!isset($_SERVER['PHP_AUTH_USER'])) {
  header('WWW-Authenticate: Basic realm="Test Authentication System"'); 
  header('HTTP/1.0 401 Unauthorized');
  echo "\n \n Vous avez pressé le bouton 'annulation'. Vous devez entrer un identifiant et un mot de passe pour accéder à cette ressource.\n"; 
  exit;
} else {
   requiert_authentification ('Groupe_autorisé'); 
}
?>

- donner le résultat du test de la variable $commande proposé dans mon post <17> avant et après cette modification

Garde des copies de tes sources avant modifications, on ne sais jamais :)


Dal
0
asevere Messages postés 13521 Statut Webmaster 426 > [Dal] Messages postés 6373 Statut Contributeur
 
Pas logique, je te l'accorde tout a fait, mais chacun gere ça comme il l'entend, j'aurais aussi tendance a voir ça en premier, mais en l'occurence, ces bouts de code ont déjà fonctionnés, donc avant de toucher a ce qui fonctionne autant voir ce qui plante :)
0
asevere Messages postés 13521 Statut Webmaster 426 > [Dal] Messages postés 6373 Statut Contributeur
 
Le reste de la conf ressemblait beaucoup a du standard Fedora, donc soit doit bien etre PHP 4.3.4 :-/
0
[Dal] Messages postés 6373 Statut Contributeur 1 106
 
note bien qu'à partir de la version 4.10

Petite correction, il manque un point. C'est la version 4.1.0 :)


Dal
0
magic charly Messages postés 122 Statut Membre 22
 
1) la version de mon php est 4.3.8


2)
il s'agit bien d'une identification http. Autant je suis d'accord pr dire qu'il faut chanG le code php des pages a protéger de façon a tester le cas ou l'utilisateur tape sur annuler. Autant je ne pense pas qu'il faille éliminer les 2 lignes header de la fonction erreur_authentification qui correspondent a l'appel de la popup d'identification.

En effet, si je les enlève (je l'ai vérifié en testant depuis une station windows) lorsqu'un utilisateur rentre un mauvais login/pwd on a bien un message d'erreur mais qd il fait "actualiser" ce la ne lui renvoie pa la pop up d'identification.

3) depuis ma station windows
en faisant les modifications que tu m'as données j'obtiens
pour echo(" commande : ".$commande) je trouve (en rentrant sur la pop up d'identification login =gggg et password=fffff)

echo -e gggg fffff| /usr/lib/squid/smb_auth -W isodelta -U 10.63.250.11 -S /netlogon/RIEN

en consultant une station linux depuis un poste client je trouve
des erreurs :(
Warning: Cannot modify header information - headers already sent by (output started at /Data/pub/intranet.iso.autoliv.int/web/test_exec.php:4) in /Data/pub/intranet.iso.autoliv.int/web/test_exec.php on line 9

Warning: Cannot modify header information - headers already sent by (output started at /Data/pub/intranet.iso.autoliv.int/web/test_exec.php:4) in /Data/pub/intranet.iso.autoliv.int/web/test_exec.php on line 10
Vous avez pressé le bouton 'annulation'. Vous devez entrer un identifiant et un mot de passe pour accéder à cette ressource.


sérieusement il y a un truc qui ne passe pas sur mon serveur linux :( et je commence a désespérer
-1
asevere Messages postés 13521 Statut Webmaster 426
 
Salut charly, les erreurs viennent uniquement du echo que tu as ajouté. en effet, tu tentes d'envoyer tes header alors qu'une sortie a déjà commencée avec le echo.
0