[Apache] petit problème !

Résolu
Bonjour,

Voici mon petit souci :
Hier : je modifie volontairement le fichier httpd.conf :
Listen 8000
(au lieu de Listen 80)

je relance httpd : OK ! pas de problème !

Aujourd'hui : je décide que certains services (dont httpd) ne soient pas lancés au démarrage de la machine. Je fais les modifs via le Centre de Contrôle puis je lance httpd :
[root@localhost conf]# /etc/rc.d/init.d/httpd -k start
Starting httpd: (98)Address already in use: make_sock: could not bind to address 0.0.0.0:8000
no listening sockets available, shutting down
Unable to open logs
[ÉCHEC ]

[root@localhost conf]#

si je remodifie mon fichier httpd.conf ainsi :
LISTEN 80

(au lieu de LISTEN 8000)
[root@localhost conf]# /etc/rc.d/init.d/httpd -k start
Starting httpd: [ OK ]
[root@localhost conf]#

Ma question : pourquoi hier pas de problème et aujourd'hui problème ? Peut-être que le port 8000 est déjà utilisé : comment le savoir ?

D'avance merci !

:-))
Configuration: Linux Mandriva
Firefox 2.0.0.3

6 réponses

  1. Salut,

    désolé, j'avais pas répondu à ta question sur mon navigateur : Mozilla Firefox-2.0.0.4
    et mon serveur apache : Server version: Apache/2.2.4

    Si tu as déjà installé Apache et que tu installes Apache-SSL, tu te retrouves avec deux serveurs http
    oui ! Je n'ai plus qu'Apache ...... pour l'instant :-)

    Je préfère personnellement installer mod_ssl
    ça sera ma deuxième étape ....

    [root@localhost redfox]# telnet localhost 80
    Trying 127.0.0.1...
    Connected to localhost (127.0.0.1).
    Escape character is '^]'.

    j'attends de voir dans combien de temps il va se déconnecter automatiquement ...

    Aussi, avec Apache, il suffit en fait de taper n'importe quel caractère et de taper sur entrée pour que le serveur http te renvoie la page d'accueil en html

    là par contre il me renvoie à l'aidenavigation de mon FAI !

    Merci pour ton aide.

    :-))
    0
    1. Contributeur
      Salut,

      Apache-SSL est une implémentation d'Apache avec des capacités SSL.

      https://apache-ssl.org/#What_is_Apache-SSL

      Si tu as déjà installé Apache et que tu installes Apache-SSL, tu te retrouves avec deux serveurs http.

      Je préfère personnellement installer mod_ssl, qui est un module pour Apache, et qui fonctionne donc avec ton serveur Apache existant (sous réserve que ce soit un serveur 1.3 en principe). Leur documentation est vraiment bien faite.

      http://www.modssl.org/

      Pour ta question :

      et telnet localhost 80 ?
      c'est OK ! (PS comment on quitte telnet car j'ai pas compris !)


      Au bout d'un moment le serveur http te déconnecte.

      Aussi, avec Apache, il suffit en fait de taper n'importe quel caractère et de taper sur entrée pour que le serveur http te renvoie la page d'accueil en html.

      Cela termine ta requête au serveur et ta session telnet.

      Dal
      0
      1. Modérateur
        tu peux utiliser les options courtes
        netstat -lpn | grep 8000 

        et je te donne les 2 groupes des options netstat que tu ne pourras pas oublié :-DD
        netstat -taupe
        netstat -lapute
        --
        lami20j
        0
        1. ok merci ! je les avais déjà testé car tu les avait indiqué dans un post récemment !
          Je reprends donc mon cale-pain ! :-))

          Une petite question d'apache ....ou de sioux (je comprends pô)
          URL http://localhost ça marche !
          URL http://127.0.0.1 ça marche pô !
          URL http://127.0.0.1:8000 ça marche !
          URL http://localhost:8000 ça marche !

          question : pourquoi indiquer "8000" pour l'adresse "127.0.0.1" alors que pour "localhost" y a pas besoin !
          d'ailleurs mon fichier httpd.conf ne mentionne que "127.0.0.1".

          merci.

          :-))
          0
        2. Contributeur
          @bob031Salut,

          Il peut y avoir plusieurs raisons

          localhost pointe ailleurs que sur 127.0.0.1 où il se trouve que tu as un serveur sur le port 80 (un grep -i localhost /etc/hosts pour vérifier ou ping localhost)

          ou

          tu as définit "localhost" dans httpd.conf comme étant le nom d'un serveur virtuel, mais alors, je pense que tu dois avoir un Listen 80 qui traine dans ton httpd.conf, en plus du Listen 8000.

          http://httpd.apache.org/docs/2.2/fr/vhosts/name-based.html
          http://httpd.apache.org/docs/2.2/fr/bind.html

          ou

          tu as lancé deux instances d'Apache (recherche avec netstat s'il y a quelque chose qui écoute sur le port 80) et tu dois avoir quelque part un httpd.conf associé à cette autre instance qui écoute sur le port 80.

          + ... d'autres :)

          Dal
          0
        3. @[Dal]Salut Dal,

          localhost pointe ailleurs que sur 127.0.0.1 où il se trouve que tu as un serveur sur le port 80
          [root@localhost httpd]# grep -i localhost /etc/hosts
          127.0.0.1 localhost

          [root@localhost httpd]# ping localhost
          PING localhost (127.0.0.1) 56(84) bytes of data.
          64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.099 ms
          64 bytes from localhost (127.0.0.1): icmp_seq=2 ttl=64 time=0.088 ms

          [root@localhost httpd]# netstat -lpn | grep 80
          tcp 0 0 0.0.0.0:8000 0.0.0.0:* LISTEN 17139/httpd

          [root@localhost conf]# cat httpd.conf | grep 80
          #Listen 12.34.56.78:80
          #Listen 0.0.0.0:80
          Listen 8000
          #ServerName www.example.com:80
          #NameVirtualHost *:80
          #<VirtualHost *:80>

          + ... d'autres
          probablement .... :-))

          merci pour tes liens !
          De toute façon faut que je regarde apache d'un peu plus près (virtual host, le mode ssl, etc ....) car je maîtrise ....pas du tout !

          :-))
          0
        4. Modérateur
          @bob031De toute façon faut que je regarde apache d'un peu plus près
          'gaffe au scalp ;-DDD

          =>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> m'en fiche, 'fait beau ;-)))
          0
        5. @jipicygaffe au scalp
          j'ai les yeux grands ouverts ...... les oreilles en alerte ...... et la tête qui tourne à 360° ....ça devrait le faire ! :-))

          m'en fiche, 'fait beau
          pourvu que ça dure !!!! :-))

          :-))
          0
      2. Re-,

        Bien j'ai réinstallé apache via urpmi.
        apache est bien lancé par la commande httpd -k start et je n'ai pas de message d'eereur !
        La modification du fichier httpd.conf :
        LISTEN 8000

        et la relance du service indique que tout va bien pour l'instant (pas de message d'erreur).

        [root@localhost conf]# netstat --listening --programs --numeric-ports | grep 8000
        tcp 0 0 *:8000 *:* LISTEN 15680/httpd
        [root@localhost conf]#

        ok, le port 8000 n'est utilisé que par httpd !

        bon, j'indique le post comme résolu ! J'y reviendrai si le problème se reproduit !

        Merci encore Dal et lami20j pour votre aide !

        :-))
        0
        1. Modérateur
          Salut,

          Peut-être que le port 8000 est déjà utilisé : comment le savoir ?

          man netstat
          --
          lami20j
          0
          1. merci lami20j !
            Désespérant mes pertes de mémoire ..... :-(
            ....enfin je vais noter toutes ces petites commandes "bien utiles" dans un cale-pain !! :-)

            :-))
            0
        2. Contributeur
          Salut,

          Que te dis :

          netstat --listening --programs --numeric-ports | grep 8000

          Dal
          0
          1. Merci Dal,

            Malheureusement j'ai tellement bidouillé mon fichier httpd.conf (sans faire de copie du fichier original .....comme de bien entendu !) que j'ai décidé de virer Apache pour le réinstaller !
            Néanmoins la commande que tu m'as indiqué ne me renvoie rien (après avoir virer Apache), ce qui semble suggérer que je n'ai pas d'autre service utilisant le port 8000.

            La question reste donc en suspend, le temps de réinstaller Apache ! D'ailleurs petites questions :
            quelle est la différence entre apache et httpd ?
            vaut-il mieux installer apache ou httpd via urpmi ou via fichier tar.gz ?

            D'avance merci !

            :-))
            0