Exécuter un fichier sur mon serveur apache

Bonjour,

Je suis sur debian Wheezy 3.0.4 .
Sur mon site web apache, quand je tape dans l’url du navigateur :

ça ne fonctionne pas

Dans log, j’ai ce message :

cat /var/log/apache2/error.log ALSA lib confmisc.c:768:(parse_card) cannot find card '0' ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_card_driver returned error: No such file or directory ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory ALSA lib confmisc.c:1251:(snd_func_refer) error evaluating name ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory ALSA lib conf.c:4720:(snd_config_expand) Evaluate error: No such file or directory ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM default aplay: main:682: audio open error: No such file or directory root@debian:~#

Fichier /var/www/maison/N0/vera/vera-id-42-on.php

<?php exec("/home/serveur/Domotique/z-wave/son-confirmation/son-id-42-on.sh"); ?>

Fichier /home/serveur/Domotique/z-wave/son-confirmation/son-id-42-on.sh

[code]#!/bin/bash

#----------------- VARIABLES -----------------

id=42
commutateur=on
lecteur_audio=aplay
chemin_audio="/home/serveur/Domotique/z-wave/fichiers-audio/wav/"
fichier_audio="Ensemble-tv-chambre-des-invites-on.wav"
nom_du_module="Ensemble TV Chambre des invités"
nom_de_la_piece=“Chambre des invités (RDC)” #Rom

#--------------- EXECUTE LE SON DE CONFIRMATION DE L’ORDRE DOMOTIQUE ----------------
$lecteur_audio $chemin_audio$fichier_audio
echo “”

#--------------- DETAILS ----------------
echo "Dètail :"
echo "-------"
echo "Nom du module : $nom_du_module"
echo "Nom de la pièce : $nom_de_la_piece"
echo "Nom du fichier audio : $chemin_audio$fichier_audio"
echo "Numèro id du module : $id"
echo “Position du commutateur : $commutateur”[/code]

Quand je l’execute du terminal ça marche

[code]serveur@debian:~$ /home/serveur/Domotique/z-wave/son-confirmation/son-id-42-on.sh
Lecture WAVE ‘/home/serveur/Domotique/z-wave/fichiers-audio/wav/Ensemble-tv-chambre-des-invites-on.wav’ : Signed 16 bit Little Endian, Fréquence 44100 Hz, Stéréo

Dètail :

Nom du module : Ensemble TV Chambre des invités
Nom de la pièce : Chambre des invités (RDC)
Nom du fichier audio : /home/serveur/Domotique/z-wave/fichiers-audio/wav/Ensemble-tv-chambre-des-invites-on.wav
Numèro id du module : 42
Position du commutateur : on

serveur@debian:~$[/code]

Pour voir ce qui ce passe avec apache j’ai fait ceci dans le fichier /maison/N0/vera/vera-id-42-on.php

[code]<?php

#exec("/home/serveur/Domotique/z-wave/son-confirmation/son-id-42-on.sh");

$cmd = “/home/serveur/Domotique/z-wave/son-confirmation/son-id-42-on.sh”;
#exec($cmd);

$output = shell_exec($cmd);
echo “

$output
”;

echo “ok”;
?>[/code]

Une fois exécuté dans la navigateur, http://192.168.0.1/maison/N0/vera/vera-id-42-on.phpil s’affiche :

[code]aplay /home/serveur/Domotique/z-wave/fichiers-audio/wav/Ensemble-tv-chambre-des-invites-on.wav

Dètail :

Nom du module : Ensemble TV Chambre des invités
Nom de la pièce : Chambre des invités (RDC)
Nom du fichier audio : /home/serveur/Domotique/z-wave/fichiers-audio/wav/Ensemble-tv-chambre-des-invites-on.wav
Numèro id du module : 42
Position du commutateur : on
[/code]
Et dans le log, il y a le même message :

root@debian:~# cat /var/log/apache2/error.log ALSA lib confmisc.c:768:(parse_card) cannot find card '0' ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_card_driver returned error: No such file or directory ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory ALSA lib confmisc.c:1251:(snd_func_refer) error evaluating name ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory ALSA lib conf.c:4720:(snd_config_expand) Evaluate error: No such file or directory ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM default aplay: main:682: audio open error: No such file or directory ALSA lib confmisc.c:768:(parse_card) cannot find card '0' ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_card_driver returned error: No such file or directory ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory ALSA lib confmisc.c:1251:(snd_func_refer) error evaluating name ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory ALSA lib conf.c:4720:(snd_config_expand) Evaluate error: No such file or directory ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM default aplay: main:682: audio open error: No such file or directory root@debian:~#

Droit des fichiers

root@debian:~# ls -al /var/www/maison/N0/vera/vera-id-42-off.php -rw-r--r-- 1 root www-data 85 juin 22 22:34 /var/www/maison/N0/vera/vera-id-42-off.php root@debian:~#

serveur@debian:~$ ls -al /home/serveur/Domotique/z-wave/son-confirmation/son-id-42-on.sh -rwxr-xr-x 1 serveur serveur 908 juin 26 01:31 /home/serveur/Domotique/z-wave/son-confirmation/son-id-42-on.sh serveur@debian:~$

serveur@debian:~$ ls -al /home/serveur/Domotique/z-wave/fichiers-audio/wav/Ensemble-tv-chambre-des-invites-on.wav -rw-rw-r-- 1 serveur serveur 555276 juin 20 13:37 /home/serveur/Domotique/z-wave/fichiers-audio/wav/Ensemble-tv-chambre-des-invites-on.wav serveur@debian:~$

Pourquoi je n’arrive pas à exécuter un fichier sur mon serveur apache ?

Merci.

Certainement car l’utilisateur www-data n’appartient pas au groupe audio,

L’erreur que tu as concerne ALSA, pas directement le serveur web.

Bonjour,

J’ai fait :

root@debian:~# adduser www-data audio Ajout de l'utilisateur « www-data » au groupe « audio »... Ajout de l'utilisateur www-data au groupe audio Fait. root@debian:~#

Puis dans le navigateur :

Toujours pas de son

log

root@debian:~# cat /var/log/apache2/error.log ALSA lib confmisc.c:768:(parse_card) cannot find card '0' ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_card_driver returned error: No such file or directory ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory ALSA lib confmisc.c:1251:(snd_func_refer) error evaluating name ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory ALSA lib conf.c:4720:(snd_config_expand) Evaluate error: No such file or directory ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM default aplay: main:682: audio open error: No such file or directory root@debian:~#

Merci.

Pas d’histoire de port particulier ?

Salut,

[quote=“xunil2003”]ALSA lib conf.c:4241:(_snd_config_evaluate) function snd_func_card_driver returned error: No such file or directory
[/quote]

[mono]# aptitude install alsa-base alsa-utils alsa-tools[/mono] ?

Bonjour,

Ok j’ai fait :

[code]root@debian:~# aptitude install alsa-base alsa-utils alsa-tools
Les NOUVEAUX paquets suivants vont être installés :
alsa-tools
0 paquets mis à jour, 1 nouvellement installés, 0 à enlever et 0 non mis à jour.
Il est nécessaire de télécharger 94,3 ko d’archives. Après dépaquetage, 265 ko seront utilisés.
Prendre : 1 http://ftp.fr.debian.org/debian/ stable/main alsa-tools armel 1.0.25-2 [94,3 kB]
94,3 ko téléchargés en 0s (366 ko/s)
Sélection du paquet alsa-tools précédemment désélectionné.
(Lecture de la base de données… 22973 fichiers et répertoires déjà installés.)
Dépaquetage de alsa-tools (à partir de …/alsa-tools_1.0.25-2_armel.deb) …
Traitement des actions différées (« triggers ») pour « man-db »…
Paramétrage de alsa-tools (1.0.25-2) …

root@debian:~#[/code]

Puis j’ai rebooté

[code]root@debian:~# reboot

Broadcast message from root@debian (pts/1) (Sun Jun 29 12:13:54 2014):

The system is going down for reboot NOW!
root@debian:~# Connection to 192.168.0.1 closed by remote host.
Connection to 192.168.0.1 closed.
laurent@laurent-Bureau:~$[/code]

Ensuite dans le navigateur j’ai tapé

C’est ok, j’ai le son.

Merci.