|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | |||
|
Invité de passage
![]() Inscription : avril 2011 Messages : 8 ![]() |
Bonjour.
Je viens vers vous dans un long post comme j'ai l'habitude de les faire lorsque j'ai un problème; parce que ce n'est pas les habituelles deux lignes de sms qu'on ne voit que trop fréquemment qui aident les gens à comprendre le soucis. Donc comme indiqué dans le titre, j'ai des soucis pour faire fonctionner le mod_dav. A noter que je souhaite le faire fonctionner d'une certaine façon, le but n'étant pas que ça fonctionne à tout prix, mais que je réussisse à le faire aller de la façon dont je souhaite l'installer. Je vais donc partir de zéro. Pour un peu plus de détails, la "façon", donc, dont je souhaite tout faire fonctionner, c'est en installant tout avec le code source, et en intégrant le mod_dav en tant que .so. Petit aperçu de mon dossier dev (dans mon dossier personnel hein, aucun rapport avec le vrai /dev): Citation:
Pour installer Apache, je fais donc ceci (en occultant la partie décompression du dossier et les sudo) Citation:
Citation:
Merci d'avance. |
|||
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : août 2005 Messages : 8 280 ![]() |
Bizarre. Tu peux donner la sortie de la commande apxs ?
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
|
|
00
|
|
|
#3 | |
|
Invité de passage
![]() Inscription : avril 2011 Messages : 8 ![]() |
Voila voila
Citation:
|
|
|
|
00
|
|
|
#4 |
![]() ![]() Inscription : août 2005 Messages : 8 280 ![]() |
Tu démarres Apache comment (quelle commande ?) ? As-tu essayé de faire ce qui es indiqué dans le commentaire à la fin de la commande apxs ? J'entends par là éditer le fichier /etc/ld.so.conf s'il existe pour y indiquer le chemin /home/chameau/dev/apache/apache-2.2.17/modules.
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : avril 2011 Messages : 8 ![]() |
Je démarre Apache de cette façon : sudo [Dossier Apache]/bin/apachectl start
Quand au fichier /etc/ld.so.conf, il ne contient que ceci : include /etc/ld.so.conf.d/*.conf J'ai donc suivi bêtement la logique et ajouté (testé aussi sans include) : include /home/chameau/dev/apache/apache-2.2.17/modules Après lecture rapide de l'utilité de ce fichier, j'ai lu qu'il fallait exécuter /sbin/ldconfig après chaque modification du fichier précédent, ce que j'ai fait. Puis j'ai redémarré Apache, mais rien n'y fait. Même erreur. Edit : J'ai ajouté les modules dav_fs et dav_lock au cas où le problème viendrait de là, et non... Par contre, je note que le soucis d'undefined symbol survient également sur les deux autres modules, l'erreur affichée n'étant pas la même en fonction de quel module se trouve en première position de chargement dans le httpd.conf. LoadModule mod_dav_fs_module modules/mod_dav_fs.so en premier : undefined symbol: dav_fs_gather_propsets LoadModule mod_dav_lock_module modules/mod_dav_lock.so : undefined symbol: dav_hooks_locks_generic |
|
|
00
|
|
|
#6 |
![]() ![]() Inscription : août 2005 Messages : 8 280 ![]() |
J'ai fait un test hier et c'est effectivement assez bizarre : le module généré par APXS est beaucoup plus petit que celui généré par un ./configure --with-... C'est un peu comme si APXS ne compilait pas tout le module.
Tu es vraiment sur de vouloir compiler avec APXS et pas un --with ? Un --with te génèrera aussi un .so.
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : avril 2011 Messages : 8 ![]() |
Quelle est la différence entre les deux méthodes?
|
|
|
00
|
|
|
#8 |
![]() ![]() Inscription : août 2005 Messages : 8 280 ![]() |
Honnêtement, aucune idée !! Mais y en a une qui marche
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Inscription : avril 2011 Messages : 8 ![]() |
Poussons la question un peu plus loin.
J'installe Apache comme annoncé précédemment. Si je veux ajouter le mod_dav avec le --enable, est-ce que je dois : - désinstaller Apache et le réinstaller avec le enable - refaire un configure avec enable dav > make clean (c'est ça?) > make install - refaire un configure entier (--prefix, -- enable-so, --enable-dav....) Les solutions 2 et 3 ne risquent-elles pas de faire un reset, entre autres, du httpd.conf? |
|
|
00
|
|
|
#10 |
![]() ![]() Inscription : août 2005 Messages : 8 280 ![]() |
A mon avis, tu peux faire une compile quasi complète (make clean, configure et make) mais surtout pas le make install. Comme ça, tu as tout compilé mais pas écrasé l'existant. Il ne restera plus qu'à trouvé et copié le fichier mod_dav.so.
Un simple backup du fichier pour restauration ultérieure devrait faire l'affaire.
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
|
|
00
|
|
|
#11 |
|
Invité de passage
![]() Inscription : avril 2011 Messages : 8 ![]() |
Bonjour bonjour. Me revoilà pour une nouvelle question en repensant à tout ça...
Quelle est la différence entre -with-dav (comme proposé), et --enable-dav? |
|
|
00
|
|
|
#12 |
![]() ![]() Inscription : août 2005 Messages : 8 280 ![]() |
Euh... Faut lire dans le détail l'aide configure. Comme ça, à froid, je dirais que la différence se joue dans la prise en charge de mod_dav en tant que module DSO : avec --with... tu compiles Apache pour qu'il intègre directement le module en question dans l'exécutable. En gros, tu n'auras pas de fichier .so pour ce module. A l'inverse, avec --enable... tu compiles le module à part (tu as donc un .so) et tu peux le charger dans Apache avec la directive LoadModule.
Mais je ne suis vraiment pas un pro de la compilation d'Apache, donc il ne faut surtout pas me croire sur parole
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
|
|
00
|
|
|
#13 | ||
|
Invité de passage
![]() Inscription : avril 2011 Messages : 8 ![]() |
Citation:
Citation:
Sinon pas d'inquiétudes, je suis le premier à éplucher la doc Revenons à nos moutons. Je pose la question pour voir si j'ai bien compris. Le principe d'apxs est d'ajouter "à chaud" un module dans apache. Dans le cas contraire, pour faire la même, il faut utiliser le configure. Auquel cas il faut retaper la commande exacte tout en rajoutant le module requis... La commande install va écraser notre précédente version d'Apache pour ajouter la nouvelle. Mais cette commande n'est pas tout le temps utile pour cette même raison. Dans le cas de quelqu'un qui s'y connait un peu (ou pas) et sait exactement quel fichier il veut ajouter (un seul dans mon cas donc c'est suffisamment facile), il suffit comme conseillé précédemment d'aller le piocher, et le rajouter dans notre dossier actuel, et tout fonctionne. J'ai bon? En gros, apxs est une sorte de... pour imager, c'est un peu comme faire entrer une cheminée par une maison construite. Sans apxs, il faut déconstruire la maison, faire entrer la cheminée, puis la reconstruire. Avec apxs, la cheminée arrive en pièces détachées, et on la monte à l'intérieur... J'ai bon aussi? Dernière question affirmative : dans tous les cas, un redémarrage du serveur est requis. |
||
|
|
00
|
|
|
#14 |
![]() ![]() Inscription : août 2005 Messages : 8 280 ![]() |
Par expérience, je dirais que ce n'est pas tout à fait ça. Le plus important c'est d'avoir compilé Apache avec le module DSO. C'est ce module qui apporte la directive LoadModule. Sans elle, tu ne peux rien faire.
Après, APXS c'est juste un moyen simple de compiler et déclarer (= ajout du LoadModule dans la conf d'Apache) un module après avoir compilé Apache. Reste plus que le redémarrage. APXS va réexploiter les fichiers générés par configure pour retrouver les répertoires et les fichiers qui vont bien. Mais APXS est juste un moyen simple : tu peux toujours recompiler complètement Apache avec configure et t'arrêter au make (i.e. ne pas faire make install) : dans le répertoire des sources d'Apache, tu trouveras quelque part le .so qui va bien et il te suffit de le copier dans le bon répertoire et d'ajouter toi-même le LoadModule qui va bien. J'ai déjà voulu utilisé APXS mais ça n'a pas réussi : j'en suis revenu à la seconde méthode que j'évoque C'était pour compiler mod_dav d'ailleurs, je crois
__________________
![]() Du détail, du détail, du détail !!! Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com