, я завершил свою интеграцию ansible + vagrant, которая находится здесь . Playbook устанавливает все, что я проинструктировал. выполняет все изменения файла в соответствии с инструкциями. Но когда я проверяю свой локальный компьютер, используя http: localhost: 8080
или http://127.0.0.1:8080
он никогда не работает с файлом index.php. Он всегда загружает файл. Итак, чтобы заставить его работать, мне нужно войти в бродячий ящик и нажать ниже команды на сервер, чтобы обслуживать страницу php.
sudo service nginx restart
sudo service php7.0-fpm restart
Я уже определил обработчик для перезапуска службы, как показано ниже.
- name: "restart services"
service: >
name= "{{ item }}"
state=restarted
with_items:
- nginx
- php7.0-fpm
У меня есть задача, которая принимает приложение git clone. который приведен ниже.
- name: Application git clone
git:
repo: https://github.com/shaileshsutar88/deploy.git
dest: /var/www/html
notify:
- restart services
Я не уверен, что я делаю здесь не так или что-то упускаю. В противном случае я хотел бы больше узнать о доступном потоке выполнения. Когда я проверяю доступное выполнение с подробным описанием, он говорит ОК, что означает, что обработчики не работают. Мне интересно, почему он не запускает обработчики, поскольку я вызываю его после git clone моего приложения.
RUNNING HANDLER [web : restart services] ***************************************
ok: [web] => (item=nginx) => {"changed": false, "failed": false, "item": "nginx", "name": "", "status": {}}
ok: [web] => (item=php7.0-fpm) => {"changed": false, "failed": false, "item": "php7.0-fpm", "name": "", "status": {}}
Если ваш NGINX начинает загружать файл, это обычно означает, что ваш PHP-обработчик настроен неправильно. Вы пытались создать, например, robots.txt и открыть его? Должен работать без необходимости загружать его.
Как вчера сказал Константин, вам следует использовать обработчики. Я прочитал ваше репозиторий на github и увидел, что вы определили обработчик "reload services", но никогда его не использовали (или, по крайней мере, я его не видел)
Вам нужно сделать это с помощью:
- name: write the apache config file template: src: /srv/httpd.j2 dest: /etc/httpd.conf notify: - reload services