Ansibleでnginxがインストールされた環境に対してgeerlingguy.phpのロールを実行するとwebサーバの再起動で下記のエラーが発生します。
$ ansible-playbook playbook.yml
...
RUNNING HANDLER [geerlingguy.php : restart webserver] ***********************************
fatal: [dev]: FAILED! => {
"changed": false,
"msg": "Unable to start service httpd: Job for httpd.service failed
because the control process exited with error code.\n
See \"systemctl status httpd.service\" and \"journalctl -xe\" for details.\n"
}
これは、geerlingguy.phpのロールで、webサーバがnginxではなくApacheを想定しているためwebサーバの再起動に失敗するのが原因です。
これを解消するためには、playbook.ymlへ下記のようにphp_webserver_daemon
を追加し、webサーバのデーモン名へnginxと明記すれば良いです
- role: geerlingguy.php
php_webserver_daemon: "nginx.service"
こちらもおススメ