J'ai récemment installé Xampp sur ma machine Windows. Cela a fonctionné quand je viens de le faire, voir ici . Cependant, maintenant, Apache ne s'allume pas. Je réalise que je ne l'ai pas fermé correctement (je n'ai pas utilisé xampp_stop), alors peut-être que cela pourrait en être la cause.
L'erreur que je reçois est la suivante:
make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
unable to open logs
Comment puis-je le faire fonctionner?
J'ai fini par le résoudre. Accédez au panneau de configuration de Xampp. Cochez la case "Service" . Cliquez sur le bouton "SCM". (Ou bouton "Service", sur le bouton "SCM").
Puis j'ai cliqué sur "Apache" dans la liste des services. L'allumé.
Désormais, il est étiqueté "En cours d'exécution" dans le panneau de configuration et "localhost" fonctionne.
Je viens de tomber sur ce très bien documenté blog concernant Apache ne fonctionne pas .. Je pense que c'est vraiment bon de faire référence si vous avez des problèmes de démarrage Apache.
voici les étapes que je note à partir du lien:
Si vous pensez que d'autres étapes pourraient également causer un problème, veuillez commenter.
J'ai rencontré ce problème il y a quelques mois. Vous devez définir Apache en tant que service Windows automatique en cochant la case Svc dans le panneau de configuration XAMPP. Une fois que vous l'avez défini en tant que service, vous devez redémarrer Windows avant de pouvoir lancer Apache. Une fois que vous avez redémarré Windows, vous devriez pouvoir arrêter Apache via le panneau de configuration XAMPP.
De un article de blog à ce sujet :
Cela est dû au fait que Windows 7 dispose d'un service appelé http.sys qui démarre automatiquement et utilise le port 80. L'exécution d'Apache en tant que service automatique entraîne le démarrage d'Apache avant le service http.sys. Cela permet à Apache d’obtenir le port 80 avant le démarrage de http.sys.
Un: s'il fonctionne en tant que service, vérifiez vos services dans Windows et assurez-vous qu'il est arrêté.
Deux: Si ce n'est pas un service, ce sera juste un processus; allez dans le gestionnaire de tâches et trouvez httpd/Apache et terminez le processus.
Trois: Assurez-vous que vous exécutez xampp_start/xampp_control en tant qu'administrateur. Sur certains systèmes, cela est important.
Je recommanderais de toujours utiliser xampp_control car cela donne une fenêtre rapide pour savoir si Apache est censé fonctionner ou non, même si des événements inhabituels se sont produits récemment.
Essayer
netstat -aon | more
Si cela ne fonctionne pas, voyez si quelque chose d'autre écoute sur ce port et terminez ce processus.
Vous pouvez également souhaiter éditer le fichier httpd.conf d’Apache (probablement dans xamppdir/Apache/conf) pour écouter un autre port et voir s’il se lancera.
Pas:
changez le fichier httpd.cong dans ces lignes:
Listen 8080
ServerName localhost:8080 ( port as example, 8080)
Maintenant, créez un fichier xampp.ini où se trouve le fichier xampp-control.exe et mettez-y le code:
[PORTS]
Apache = 8080
Maintenant, redémarrez le xampp.
J'espère que cela fonctionnera pour changer le port Apache. Mais si vous avez installé le client Oracle 10g ou n’importe quel logiciel dans lequel Perl est installé, suivez les étapes décrites ci-dessous:
4.changez les lignes de:
`# Perl settings`
`Include "conf/extra/httpd-Perl.conf"`
à
`# Perl settings`
`#Include "conf/extra/httpd-Perl.conf"`
Maintenant, redémarrez le xampp et cela fonctionne correctement dans le port 8080.
J'ai trouvé le problème dans l'application TeamViewer - elle utilise le port 80 par défaut. Dans les paramètres avancés, j'ai apporté des modifications afin que l'application n'utilise pas le port 80 ou 443 pour les connexions entrantes. Puis changé de xammp et couru à nouveau. Ça marche!
J'ai eu un problème similaire, et après quelques recherches, j'ai découvert que le coupable dans mon cas était le "Service de publication World Wide Web" ( W3SVC in iissvcs Group).
Apache dans XAMPP s'est exécuté sans problème après avoir arrêté ce service dans mon cas.
J'espère que cela t'aides
Cela pourrait aider les autres, c'est pourquoi je publie ma solution particulière. J'ai récemment échangé Zend Server CE pour XAMPP (2.5). Le fichier VHOSTS devait être configuré avec une directive Include pour un error_log. J'avais des problèmes avec SVN alors j'ai effacé le projet sur lequel je travaille pour obtenir une nouvelle installation. Cependant, il m'est arrivé de lancer XAMPP avant de faire une commande svn. C'est à ce moment-là que j'ai remarqué qu'Apache était occupé ... Apache a démarré son activité dans le [Port 80]. Le commentaire de quelqu'un sur ce fil m'a rappelé la directive Include. J'ai gravi les répertoires et ajouté un error_log vide et blammo! Apache a bien démarré.
Cela pourrait aider quelqu'un d'autre aussi :)
Dans mon cas, je l'ai résolu en ouvrant xampp\Apache\conf\http.conf.
J'ai changé Listen 80 pour écouter 2337 Au-dessus de cette ligne, j'ai dû ajouter Listen 127.0.0.1:80
Puis j'ai ouvert xampp\Apache\conf\httpd-ssl.conf
J'ai changé Listen 80 to Listen 7332
Ensuite, je pourrais me connecter à nouveau à localhost.
Tout à coup, mon XAMPP Apache ne voulait pas démarrer et, alors que je ne recevais pas précisément ce message d'erreur, c'était parce que j'avais installé une mise à niveau de Skype. Skype a alors pris le port 80 à l'origine du blocage du serveur Apache. J'ai modifié un paramètre avancé de Skype pour résoudre ce problème.
Si votre problème n’a pas été résolu, recherchez sur cette page le lien "Correction automatique de Windows". Cela a fonctionné pour moi: a utilisé l'outil, redémarré le PC, tous les ports ouverts, instantanément.
http://support.Microsoft.com/kb/811259/fr
GL