Puis-je exécuter ma demande mod_perl en tant qu'utilisateur ordinaire
Question
Puis-je utiliser mon mod_perl aplication en tant qu'utilisateur ordinaire similaire à l'exécution d'une application CGI vanilles sous suexec?
La solution
De la :
Est-il possible d'exécuter mod_perl Apache a permis que Suexec?
La réponse est Non. La raison est que vous ne pouvez pas « suid » une partie d'un processus. mod_perl vit dans l'Apache processus, de sorte que son UID et GID sont le même que le processus Apache.
Vous devez utiliser mod_cgi si vous avez besoin cette fonctionnalité.
Une autre solution consiste à utiliser un crontab d'appeler un script qui vérifie s'il y a quelque chose à faire et l'exécutera. Le script mod_perl sera en mesure de créer et de mettre à jour cette todo list.
Une réponse plus nuancée avec quelques solutions de contournement possibles "mod_perl pratique" : (J'espère que ce n'est pas un contenu piraté, si elle est s'il vous plaît modifier dehors)
mod_perl 2.0 améliore la situation, car elle permet une piscine de Perl interprètes à être dédiés à une seul hôte virtuel. Il est possible de définir les UID et GID de ces interprètes soient ceux de l'utilisateur pour lequel l'hôte virtuel est configuré, afin que les utilisateurs peuvent fonctionner dans leurs propres espaces protégés et ne peuvent pas interférer avec d'autres utilisateurs.
D'autres solutions du livre pme sont annexe C2
Autres conseils
Comme mod_perl fonctionne dans le processus apache, je pense que la réponse est généralement pas. Vous pouvez, par exemple, exécuter un processus apache séparé que cet utilisateur ordinaire et utiliser le processus principal apache comme proxy pour elle.