L'absurdité d'apache \o/
|
24-02-2013, 21h19
(Modification du message : 24-02-2013, 21h20 par InstinctHack.)
Message : #1
|
|
InstinctHack
Posting Freak Messages : 1,366 Sujets : 184 Points: 299 Inscription : Dec 2011 |
L'absurdité d'apache \o/
Io,
Je re-configure mon serveur apache et franchement je trouve qu'apache dis parfois de la merde : Citation : khaled@loopinfinity:/etc/apache2$ sudo service apache2 reload Citation :khaled@loopinfinity:/etc/apache2$ sudo service apache2 stop Citation :AccessFileName htaccess #AccessFileName .htaccess Quand les programmes disent n'importe quoi \o/ ils imitent les gens sur irc :p Citation :un jour en cours de java j'ai attrapé les seins d'une fille mais elle m'a frappé en disant "c'est privé !!" |
|
24-02-2013, 21h39
Message : #2
|
|
gruik
gouteur de savon Messages : 757 Sujets : 44 Points: 482 Inscription : Oct 2012 |
RE: L'absurdité d'apache \o/
(24-02-2013, 21h19)khaled a écrit : Je re-configure mon serveur apache et franchement je trouve qu'apache dis parfois de la merde sauf qu'en l'occurence c'est l'initscript propre à ta distribution qui donne ce résultat, apache n'y est pour rien Citation :Quand les programmes disent n'importe quoi \o/ ils imitent les gens sur irc :p ou sur certains forums, heureusement que c'est pas non plus en permanence |
|
24-02-2013, 22h17
Message : #3
|
|
InstinctHack
Posting Freak Messages : 1,366 Sujets : 184 Points: 299 Inscription : Dec 2011 |
RE: L'absurdité d'apache \o/
Ah bon ? Bah quand je crée un deamon sur mon pc, j'ai les variables qu'il me faut pour afficher un message qui correspond à la situation.
C'est pas pareil ici ? Citation :un jour en cours de java j'ai attrapé les seins d'une fille mais elle m'a frappé en disant "c'est privé !!" |
|
25-02-2013, 01h30
Message : #4
|
|
gruik
gouteur de savon Messages : 757 Sujets : 44 Points: 482 Inscription : Oct 2012 |
RE: L'absurdité d'apache \o/
si si, c'est l'initscript qui gere les options start/stop/status/reload/force-reload/restart, effectue ses tests et affiche "stopping web server ... [ok]/[failed]", c'est propre a chaque distribution et si le code (bash) est en général pas très compliqué, force est de constater que coder un _bon_ initscript n'est pas si trivial qu'on pourrait le croire
quoiqu'il en soit, si tu le trouve et le paste sur le forum on pourra peut-être tenter de le corriger ma foi, ça sera toujours ça de constructif au final |
|
25-02-2013, 02h24
Message : #5
|
|
InstinctHack
Posting Freak Messages : 1,366 Sujets : 184 Points: 299 Inscription : Dec 2011 |
RE: L'absurdité d'apache \o/
Citation :un jour en cours de java j'ai attrapé les seins d'une fille mais elle m'a frappé en disant "c'est privé !!" |
|
25-02-2013, 10h55
Message : #6
|
|
gruik
gouteur de savon Messages : 757 Sujets : 44 Points: 482 Inscription : Oct 2012 |
RE: L'absurdité d'apache \o/
la ligne 60 "source" le script init-functions de manière à pouvoir utiliser les fonctions log_*
Code BASH :
les fonctions les plus utiles/courantes sont décrites dans les specs LSB typiquement c'est la fonction log_end_msg() qui est chargée d'afficher un "[OK]"/"[FAIL]" ou "Done."/"Failed." etc. (selon la distribution), elle prend en argument 1 paramètre, 0 pour OK, 255 (-1) pour un warning, toute autre valeur est un nok/fail dans le code de l'initscript que tu pastes on voit tres clairement l'appel pour le cas d'un "apache stop" par exemple (lignes 193-197) : Code BASH :
c'est donc le retour de apache_wait_stop() qui va determiner l'affichage, sauf que quand on regarde la fonction il n'y a simplement aucun return, et la tournure de la fonction laisse également peu de doute; la fonction réussi toujours, du coup on obtient toujours un [OK] |
|
25-02-2013, 21h58
(Modification du message : 25-02-2013, 21h59 par b0fh.)
Message : #7
|
|
b0fh
Membre actif Messages : 210 Sujets : 17 Points: 309 Inscription : Jul 2012 |
RE: L'absurdité d'apache \o/
Petite observation: quand tu essaies d'arrêter un service déja arrêté, ou de démarrer un service déja démarré, est-ce que le script d'init doit signaler une erreur ou pas ?
Dans le premier cas, si un stop te retourne une erreur: tu ne sais pas si le service tourne toujours parce qu'il n'a pas réussi a s'arrêter, ou s'il ne tournait pas au départ, et donc ne tourne toujours pas. Quand le start retourne une erreur, tu ne sais pas si c'est parce que le service n'a pas pu démarrer, ou parce qu'il était déja lancé. Dans le deuxième, quand un start te retourne OK, tu sais que le service tourne, et en cas d'erreur tu sais qu'il ne tourne pas. Quand un stop te retourne OK, tu sais que le service ne tourne pas, et en cas d'erreur tu sais qu'il tourne toujours. Ce que tu ne sais pas, c'est quel était l'état du service avant l'exécution du script. Mais dans la majorité des cas, ce que tu as envie de savoir en observant le code de retour du script, c'est si le service, a l'heure actuelle, tourne ou pas. Le passé est moins important. Donc, le deuxième comportement (répondre OK quand on essaie d'arrêter un service déja arrêté) est probablement meilleur que le premier. |
|
25-02-2013, 22h32
Message : #8
|
|
gruik
gouteur de savon Messages : 757 Sujets : 44 Points: 482 Inscription : Oct 2012 |
RE: L'absurdité d'apache \o/
(25-02-2013, 21h58)b0fh a écrit : Petite observation: quand tu essaies d'arrêter un service déja arrêté, ou de démarrer un service déja démarré, est-ce que le script d'init doit signaler une erreur ou pas ? yep c'est précisément ce que j'entendais par "c'est pas si trivial qu'on pourrait le croire", sachant que même si on admet que le script doit aller plus profond dans son diagnostic on est dans la foulée confronté à d'autres problématiques et ainsi de suite, et d'une chose en amenant une autre on est vendredi et on a rien dépilé et on redoute le coup de tel fatidique de la MOA et on sait pas comment on va expliquer le tout dans son compte rendu d'activité alors de peur de se faire engueuler on menace de se suicider en se jetant de la fenêtre du rez-de-chaussée etc. etc. ça peut mener très loin faut faire gaffe. |
|
« Sujet précédent | Sujet suivant »
|
Utilisateur(s) parcourant ce sujet : 6 visiteur(s)