2011-03-09 6 views
-1

Je suis tombé sur un script wrapper pour exécuter PHP comme fastcgi, quelqu'un pourrait-il expliquer ce qui se passe dans le script?Comprendre un script shell bourne

#!/bin/sh 
exec /usr/bin/php5-cgi -c /etc/php5/cgi/php-fcgi.ini 

Répondre

1

La première ligne (sha bang ou hash bang) définit l'interpréteur, dans ce cas /bin/sh la coque standard, ce n'est pas nécessairement une coque Bourne.

Le script est probablement utilisé pour démarrer une session php-cgi avec un fichier de configuration personnalisé.

L'indicateur -c est utilisé pour sélectionner un fichier de configuration. .

essayez /usr/bin/php5-cgi --help pour plus d'informations sur les drapeaux disponibles.

+0

essayez '/ usr/bin/php5-cgi --help' pour plus d'informations qui ne semblent pas fonctionner sur la ligne de commande en utilisant wampserver. – capnhud

+0

ah, wamp .. Je pensais que vous étiez sur un vrai système d'exploitation. . Le script shell fonctionne-t-il réellement? –

+0

Je me suis dit que je devais modifier l'emplacement pour que cela fonctionne, mais je ne savais pas si c'était ce que je devais faire exactement – capnhud

1

Pas beaucoup. Il exécute /usr/bin/php5-cgi avec le paramètre -c /etc/php5/cgi/php-fcgi.ini, c'est-à-dire qu'il spécifie un fichier de configuration spécial.

+0

ok Je vois que j'ai besoin de créer un fichier de configuration dans apache pour cela – capnhud

1

Le script lui-même remplace (exec), en gardant le pid, en exécutant usr/bin/php5-cgi -c /etc/php5/cgi/php-fcgi.ini

Si elle n'a pas utilisé exec, celui qui a appelé ne serait pas obtenir l'ID de processus du processus php5-cgi. Ce script est probablement destiné à remplacer directement l'exécution de php, et tout ce qui utilise ce script nécessite l'ID de processus du processus php.