2011-05-16 3 views
5

J'essaye d'obtenir un serveur Apache fonctionnant sur mon installation de Cygwin pour suivre les didacticiels de Java Ranch Cattle Drive en ligne (fondamentalement, pour apprendre le développement de page Web de Java EE qui utilise un fond de MySQL.)Développement Web Apache sur Cygwin

J'ai utilisé le programme d'installation de Cygwin pour installer httpd (c'est ainsi que j'ai installé la plupart des autres outils de développement que j'utilise sur cygwin) et dit installation terminée, mais quand je lance 'httpd' il ne trouve pas la commande. Il semble également que le répertoire d'installation attendu (/ usr/local/apache ...) n'existe pas.

Quelqu'un a-t-il déjà utilisé cette configuration et, dans l'affirmative, pourriez-vous me décrire les étapes initiales de mise en route du serveur et d'affichage d'un navigateur pour afficher la page par défaut du serveur? Pour garder les réponses au point, je ne voulais pas discuter des inconvénients de l'exécution d'Apache sur un système Windows - c'est juste à des fins d'apprentissage. Merci d'avance.

Répondre

5

En regardant le Cygwin Package Listing for httpd, vous pouvez voir que l'exécutable est installé sous /usr/sbin.

Donc, si /usr/sbin est pas sur votre PATH (il n'est pas sur le mien, pas par défaut de toute façon), vous fait exécuter:

/usr/sbin/httpd 

Et d'ailleurs, si vous souhaitez lister les fichiers installé pour un certain paquet, vous pouvez utiliser cygcheck:

cygcheck -l httpd 
0

Quelques informations sur l'exécution d'Apache sur Cygwin:

http://httpd.apache.org/docs/1.3/cygwin.html

http://www.issociate.de/board/goto/895433/apache2_does_not_start_in_cygwin.html

http://www.cygwin.com/ml/cygwin-apps/2005-02/msg00085.html

Personnellement, je recommande l'installation de pile ou d'autres WampServer WAMP et de le faire de cette façon. Il n'y a pas de différence, sauf que vous aurez besoin de contrôler Apache via les commandes Windows [net start, net stop], pas celles de Cygwin.

+0

Utilisez WAMP, mais sachez ceci: l'accès à MySql à partir de terminaux natifs tels que RXVT ne fonctionne pas dans Cygwin. http://stackoverflow.com/questions/5768019/command-line-mysql-from-xampp-in-cygwin –

+0

+ 1 pour l'utilisation de WAMP ... est venu ici à la recherche d'aide Cygwin/Apache et a fini par aller avec WAMP et son été super facile. –

0

cygrunsrv -I Apache -p/usr/sbin/httpd -a "-X"

Cela permettra de résoudre le problème. Cela suppose que vous avez déjà configuré cyrunsrv. La raison pour laquelle httpd échoue avec cygrunsrv si vous omettez le -X est que le processus se déconnecte du terminal et cygrunsrv considère qu'il y a un échec. L'option -X pour httpd est le mode débogage ou terminal.

1

Je ne pouvais pas trouver des informations détaillées sur la façon de faire fonctionner Apache sur Cygwin, voici donc si quelqu'un est intéressé:

  • Installez le httpd-* and httpd-mod_* packages dont vous avez besoin. Notez que les paquets nommés "Apache" sont obsolètes. Vous avez besoin de ceux nommés "httpd" (qui sont en fait Apache).
  • Installez cygrunsrv (normalement, il s'agit d'un package Cygwin par défaut)
  • Exécutez /usr/bin/cygserver-config comme admin. Cela est nécessaire car Apache requiert un serveur IPC en cours d'exécution.
  • Ouvrez services.msc, puis passez au CYGWIN Cygserver. Faites un clic droit dessus et démarrez-le.Si vous ne le faites pas, vous aurez probablement des erreurs comme "AH00023: Impossible de créer le proxy mutex".
  • Enfin, démarrez Apache en exécutant /usr/sbin/apachectl restart

Config est /etc/httpd/.