Я завершил интеграцию ансибл + бродяга, которая Вот. 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. как показано ниже.
- 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