{"id":5839,"date":"2025-12-13T17:00:04","date_gmt":"2025-12-13T13:30:04","guid":{"rendered":"https:\/\/parmin.cloud\/blog\/?p=5839"},"modified":"2025-12-15T11:00:32","modified_gmt":"2025-12-15T07:30:32","slug":"%d9%be%d8%b3%d8%aa-%d8%ac%d8%af%db%8c%d8%af-5","status":"publish","type":"post","link":"https:\/\/parmin.cloud\/blog\/%d9%be%d8%b3%d8%aa-%d8%ac%d8%af%db%8c%d8%af-5\/","title":{"rendered":"\u0622\u0645\u0648\u0632\u0634 \u062c\u0627\u0645\u0639 \u062a\u0639\u0631\u06cc\u0641 \u0648 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Handler\u0647\u0627 \u062f\u0631 Ansible Playbook\u0647\u0627"},"content":{"rendered":"<div>\n<p>\u062f\u0631 \u06cc\u06a9 \u0646\u06af\u0627\u0647 \u06a9\u0644\u06cc\u060c handlers \u0647\u0627 \u06a9\u0627\u0631\u0647\u0627\u06cc \u0648\u06cc\u0698\u0647\u200c\u0627\u06cc \u0647\u0633\u062a\u0646\u062f \u06a9\u0647 \u062a\u0646\u0647\u0627 \u0632\u0645\u0627\u0646\u06cc \u0627\u062c\u0631\u0627 \u0645\u06cc\u200c\u0634\u0648\u0646\u062f \u06a9\u0647 \u062a\u0648\u0633\u0637 \u062f\u0633\u062a\u0648\u0631 notify \u0641\u0639\u0627\u0644 \u0634\u0648\u0646\u062f. handlers\u200c\u0647\u0627 \u062f\u0631 \u0627\u0646\u062a\u0647\u0627\u06cc \u0627\u062c\u0631\u0627\u06cc play\u060c \u067e\u0633 \u0627\u0632 \u0627\u062a\u0645\u0627\u0645 \u062a\u0645\u0627\u0645 \u062a\u0633\u06a9\u200c\u0647\u0627\u060c \u0627\u062c\u0631\u0627 \u0645\u06cc\u200c\u0634\u0648\u0646\u062f.\u062f\u0631 Ansible\u060c handlers \u0645\u0639\u0645\u0648\u0644\u0627\u064b \u0628\u0631\u0627\u06cc \u0634\u0631\u0648\u0639\u060c \u0628\u0627\u0631\u06af\u0630\u0627\u0631\u06cc \u0645\u062c\u062f\u062f\u060c \u0631\u06cc\u0633\u062a\u0627\u0631\u062a \u0648 \u062a\u0648\u0642\u0641 \u0633\u0631\u0648\u06cc\u0633\u200c\u0647\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc\u200c\u0634\u0648\u0646\u062f. \u0627\u06af\u0631 playbook \u0634\u0645\u0627 \u0634\u0627\u0645\u0644 \u062a\u063a\u06cc\u06cc\u0631 \u0641\u0627\u06cc\u0644\u200c\u0647\u0627\u06cc \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0628\u0627\u0634\u062f\u060c \u0627\u062d\u062a\u0645\u0627\u0644 \u0632\u06cc\u0627\u062f\u06cc \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u062f \u06a9\u0647 \u0646\u06cc\u0627\u0632 \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u06cc\u062f \u0633\u0631\u0648\u06cc\u0633 \u0645\u0648\u0631\u062f \u0646\u0638\u0631 \u0631\u0627 \u0631\u06cc\u0633\u062a\u0627\u0631\u062a \u06a9\u0646\u06cc\u062f \u062a\u0627 \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u0627\u0639\u0645\u0627\u0644 \u0634\u0648\u0646\u062f. \u062f\u0631 \u0627\u06cc\u0646 \u062d\u0627\u0644\u062a\u060c \u0628\u0627\u06cc\u062f handler\u200c\u0627\u06cc \u0628\u0631\u0627\u06cc \u0622\u0646 \u0633\u0631\u0648\u06cc\u0633 \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f \u0648 \u062f\u0633\u062a\u0648\u0631 notify \u0631\u0627 \u062f\u0631 \u0647\u0631 \u062a\u0633\u06a9\u06cc \u06a9\u0647 \u0628\u0647 \u0622\u0646 handler \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u062f\u060c \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f.<\/p>\n<p>\u062f\u0631 \u0628\u062e\u0634 \u0642\u0628\u0644\u06cc \u0627\u06cc\u0646 \u0633\u0631\u06cc \u0622\u0645\u0648\u0632\u0634\u06cc\u060c \u0646\u062d\u0648\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0642\u0627\u0644\u0628 \u0628\u0631\u0627\u06cc \u062c\u0627\u06cc\u06af\u0632\u06cc\u0646\u06cc \u0635\u0641\u062d\u0647 \u067e\u06cc\u0634\u200c\u0641\u0631\u0636 Nginx \u0628\u0627 \u06cc\u06a9 \u0635\u0641\u062d\u0647 HTML \u0633\u0641\u0627\u0631\u0634\u06cc \u0631\u0627 \u062f\u06cc\u062f\u0647\u200c\u0627\u06cc\u062f. \u062f\u0631 \u0639\u0645\u0644\u060c \u0648\u0642\u062a\u06cc \u06cc\u06a9 \u0648\u0628\u200c\u0633\u0631\u0648\u0631 Nginx \u0631\u0627\u0647\u200c\u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u06cc\u200c\u06a9\u0646\u06cc\u062f\u060c \u0627\u062d\u062a\u0645\u0627\u0644\u0627\u064b \u0641\u0627\u06cc\u0644\u200c\u0647\u0627\u06cc \u062c\u062f\u06cc\u062f\u06cc \u062f\u0631 \u062f\u0627\u06cc\u0631\u06a9\u062a\u0648\u0631\u06cc sites-available \u0627\u0636\u0627\u0641\u0647 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u062f\u060c \u0644\u06cc\u0646\u06a9\u200c\u0647\u0627\u06cc \u0646\u0645\u0627\u062f\u06cc\u0646 \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc\u200c\u06a9\u0646\u06cc\u062f \u06cc\u0627 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a\u06cc \u0631\u0627 \u062a\u063a\u06cc\u06cc\u0631 \u0645\u06cc\u200c\u062f\u0647\u06cc\u062f \u06a9\u0647 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u0628\u0627\u0631\u06af\u0630\u0627\u0631\u06cc \u0645\u062c\u062f\u062f \u06cc\u0627 \u0631\u06cc\u0633\u062a\u0627\u0631\u062a \u0633\u0631\u0648\u06cc\u0633 \u062f\u0627\u0631\u0646\u062f.<\/p>\n<p>\u062f\u0631 \u0686\u0646\u06cc\u0646 \u0634\u0631\u0627\u06cc\u0637\u06cc\u060c \u06cc\u06a9 handler \u0628\u0631\u0627\u06cc \u0631\u06cc\u0633\u062a\u0627\u0631\u062a \u0633\u0631\u0648\u06cc\u0633 Nginx \u0628\u0647 \u0634\u06a9\u0644 \u0632\u06cc\u0631 \u062e\u0648\u0627\u0647\u062f \u0628\u0648\u062f:<br \/>\n<code><br \/>\n...<br \/>\nhandlers:<br \/>\n- name: Restart Nginx<br \/>\nservice:<br \/>\nname: nginx<br \/>\nstate: restarted<br \/>\n<\/code><\/p>\n<p>\u0628\u0631\u0627\u06cc \u0641\u0639\u0627\u0644 \u06a9\u0631\u062f\u0646 \u0627\u06cc\u0646 handler\u060c \u0628\u0627\u06cc\u062f \u062f\u0633\u062a\u0648\u0631 notify \u0631\u0627 \u062f\u0631 \u0647\u0631 \u062a\u0633\u06a9\u06cc \u06a9\u0647 \u0628\u0647 \u0631\u06cc\u0633\u062a\u0627\u0631\u062a Nginx \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u062f\u060c \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f.<\/p>\n<p>playbook \u0632\u06cc\u0631\u060c \u0645\u0642\u062f\u0627\u0631 \u067e\u06cc\u0634\u200c\u0641\u0631\u0636 \u0631\u06cc\u0634\u0647 \u0633\u0646\u062f Nginx \u0631\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0645\u0627\u0698\u0648\u0644 replace \u062f\u0631 Ansible \u062a\u063a\u06cc\u06cc\u0631 \u0645\u06cc\u200c\u062f\u0647\u062f. \u0627\u06cc\u0646 \u0645\u0627\u0698\u0648\u0644 \u0628\u0647 \u062f\u0646\u0628\u0627\u0644 \u0627\u0644\u06af\u0648\u0647\u0627\u06cc\u06cc \u062f\u0631 \u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u0628\u0631 \u0627\u0633\u0627\u0633 \u06cc\u06a9 \u0639\u0628\u0627\u0631\u062a \u0645\u0646\u0638\u0645 (regexp) \u0645\u06cc\u200c\u06af\u0631\u062f\u062f \u0648 \u0647\u0631 \u0645\u0637\u0627\u0628\u0642\u062a\u06cc \u0631\u0627 \u0628\u0627 \u0645\u062d\u062a\u0648\u0627\u06cc \u0645\u0634\u062e\u0635 \u0634\u062f\u0647 \u062f\u0631 replace \u062c\u0627\u06cc\u06af\u0632\u06cc\u0646 \u0645\u06cc\u200c\u06a9\u0646\u062f. \u0633\u067e\u0633 \u062a\u0633\u06a9 \u0628\u0627 \u0627\u0631\u0633\u0627\u0644 \u06cc\u06a9 \u0627\u0639\u0644\u0627\u0646 \u0628\u0647 handler\u200c\u06cc \u0628\u0627 \u0646\u0627\u0645 &#8220;Restart Nginx&#8221;\u060c \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u06cc\u06a9 \u0631\u06cc\u0633\u062a\u0627\u0631\u062a \u062f\u0631 \u0627\u0633\u0631\u0639 \u0648\u0642\u062a \u0645\u06cc\u200c\u062f\u0647\u062f. \u0627\u06cc\u0646 \u0628\u062f\u06cc\u0646 \u0645\u0639\u0646\u06cc \u0627\u0633\u062a \u06a9\u0647 \u0647\u0631 \u0686\u0642\u062f\u0631 \u0647\u0645 \u062a\u0639\u062f\u0627\u062f \u062f\u0641\u0639\u0627\u062a \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0631\u06cc\u0633\u062a\u0627\u0631\u062a \u0632\u06cc\u0627\u062f \u0628\u0627\u0634\u062f\u060c \u062a\u0646\u0647\u0627 \u0632\u0645\u0627\u0646\u06cc \u06a9\u0647 \u062a\u0645\u0627\u0645 \u062a\u0633\u06a9\u200c\u0647\u0627 \u0627\u062c\u0631\u0627 \u0634\u062f\u0647\u200c\u0627\u0646\u062f \u062f\u0631 \u0627\u0646\u062a\u0647\u0627\u06cc \u0641\u0631\u0622\u06cc\u0646\u062f\u060c handler \u0627\u062c\u0631\u0627 \u062e\u0648\u0627\u0647\u062f \u0634\u062f. \u0647\u0645\u0686\u0646\u06cc\u0646\u060c \u0627\u06af\u0631 \u0627\u0644\u06af\u0648 \u062f\u0631 \u0641\u0627\u06cc\u0644 \u067e\u06cc\u062f\u0627 \u0646\u0634\u0648\u062f \u0648 \u062a\u063a\u06cc\u06cc\u0631\u06cc \u0627\u0639\u0645\u0627\u0644 \u0646\u0634\u0648\u062f\u060c handler \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u0646\u062e\u0648\u0627\u0647\u062f \u0634\u062f.<\/p>\n<p>\u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u062c\u062f\u06cc\u062f \u0628\u0627 \u0646\u0627\u0645 playbook-12.yml \u062f\u0631 \u067e\u0648\u0634\u0647 ansible-practice \u062e\u0648\u062f \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f:<\/p>\n<p><code><br \/>\nnano ~\/ansible-practice\/playbook-12.yml<br \/>\n<\/code><br \/>\n\u0645\u062d\u062a\u0648\u0627\u06cc \u0632\u06cc\u0631 \u0631\u0627 \u062f\u0631 \u0641\u0627\u06cc\u0644 \u062c\u062f\u06cc\u062f \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f:<br \/>\n<code><br \/>\n---<br \/>\n- hosts: all<br \/>\nbecome: yes<br \/>\nvars:<br \/>\npage_title: My Second Landing Page<br \/>\npage_description: This is my second landing page description.<br \/>\ndoc_root: \/var\/www\/mypage<\/code><\/p>\n<p><code>tasks:<br \/>\n- name: Install Nginx<br \/>\napt:<br \/>\nname: nginx<br \/>\nstate: latest<\/code><\/p>\n<p><code>- name: Make sure new doc root exists<br \/>\nfile:<br \/>\npath: \"{{ doc_root }}\"<br \/>\nstate: directory<br \/>\nmode: '0755'<\/code><\/p>\n<p><code>- name: Apply Page Template<br \/>\ntemplate:<br \/>\nsrc: files\/landing-page.html.j2<br \/>\ndest: \"{{ doc_root }}\/index.html\"<\/code><\/p>\n<p><code>- name: Replace document root on default Nginx configuration<br \/>\nreplace:<br \/>\npath: \/etc\/nginx\/sites-available\/default<br \/>\nregexp: '(\\s+)root \/var\/www\/html;(\\s+.*)?$'<br \/>\nreplace: \\g&lt;1&gt;root {{ doc_root }};\\g&lt;2&gt;<br \/>\nnotify: Restart Nginx<\/code><\/p>\n<p><code>- name: Allow all access to tcp port 80<br \/>\nufw:<br \/>\nrule: allow<br \/>\nport: '80'<br \/>\nproto: tcp<\/code><\/p>\n<p><code>handlers:<br \/>\n- name: Restart Nginx<br \/>\nservice:<br \/>\nname: nginx<br \/>\nstate: restarted<\/code><\/p>\n<p>\u067e\u0633 \u0627\u0632 \u0627\u062a\u0645\u0627\u0645\u060c \u0641\u0627\u06cc\u0644 \u0631\u0627 \u0630\u062e\u06cc\u0631\u0647 \u0648 \u0628\u0628\u0646\u062f\u06cc\u062f.<\/p>\n<p>\u06cc\u06a9 \u0646\u06a9\u062a\u0647 \u0645\u0647\u0645 \u062f\u0631\u0628\u0627\u0631\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 handlers \u0627\u06cc\u0646 \u0627\u0633\u062a \u06a9\u0647 \u062a\u0646\u0647\u0627 \u0632\u0645\u0627\u0646\u06cc \u0641\u0639\u0627\u0644 \u0645\u06cc\u200c\u0634\u0648\u0646\u062f \u06a9\u0647 \u062a\u0633\u06a9\u06cc \u06a9\u0647 \u062f\u0633\u062a\u0648\u0631 notify \u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0631\u062f\u0647 \u0627\u0633\u062a\u060c \u0628\u0627\u0639\u062b \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0631 \u0633\u0631\u0648\u0631 \u0634\u0648\u062f. \u062f\u0631 \u0642\u0627\u0644\u0628 playbook \u0628\u0627\u0644\u0627\u060c \u062f\u0641\u0639\u0647 \u0627\u0648\u0644 \u0627\u062c\u0631\u0627\u06cc \u062a\u0633\u06a9 replace \u0641\u0627\u06cc\u0644 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc Nginx \u0631\u0627 \u062a\u063a\u06cc\u06cc\u0631 \u0645\u06cc\u200c\u062f\u0647\u062f \u0648 \u062f\u0631 \u0646\u062a\u06cc\u062c\u0647 handler \u0631\u06cc\u0633\u062a\u0627\u0631\u062a \u0627\u062c\u0631\u0627 \u0645\u06cc\u200c\u0634\u0648\u062f. \u0627\u0645\u0627 \u062f\u0631 \u0627\u062c\u0631\u0627\u0647\u0627\u06cc \u0628\u0639\u062f\u06cc\u060c \u0686\u0648\u0646 \u0639\u0628\u0627\u0631\u062a \u0645\u0648\u0631\u062f \u0646\u0638\u0631 \u062f\u06cc\u06af\u0631 \u062f\u0631 \u0641\u0627\u06cc\u0644 \u0646\u06cc\u0633\u062a\u060c \u0647\u06cc\u0686 \u062a\u063a\u06cc\u06cc\u0631\u06cc \u0627\u06cc\u062c\u0627\u062f \u0646\u0645\u06cc\u200c\u0634\u0648\u062f \u0648 \u0628\u0647 \u0647\u0645\u06cc\u0646 \u062f\u0644\u06cc\u0644 handler \u0641\u0639\u0627\u0644 \u0646\u0645\u06cc\u200c\u0634\u0648\u062f.<\/p>\n<p>\u0647\u0646\u06af\u0627\u0645 \u0627\u062c\u0631\u0627\u06cc \u0627\u06cc\u0646 playbook\u060c \u062d\u062a\u0645\u0627\u064b \u06af\u0632\u06cc\u0646\u0647 -K \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f \u0632\u06cc\u0631\u0627 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u062f\u0633\u062a\u0631\u0633\u06cc sudo \u062f\u0627\u0631\u062f:<br \/>\n<code>ansible-playbook -i inventory playbook-12.yml -u sammy -K<\/code><br \/>\n<code>Output<br \/>\nBECOME password: <\/code><\/p>\n<p><code>PLAY [all] **********************************************************************************************<\/code><\/p>\n<p><code>TASK [Gathering Facts] **********************************************************************************<br \/>\nok: [203.0.113.10]<\/code><\/p>\n<p><code>TASK [Install Nginx] ************************************************************************************<br \/>\nok: [203.0.113.10]<\/code><\/p>\n<p><code>TASK [Make sure new doc root exists] ********************************************************************<br \/>\nchanged: [203.0.113.10]<\/code><\/p>\n<p><code>TASK [Apply Page Template] ******************************************************************************<br \/>\nchanged: [203.0.113.10]<\/code><\/p>\n<p><code>TASK [Replace document root on default Nginx configuration] *********************************************<br \/>\nchanged: [203.0.113.10]<\/code><\/p>\n<p><code>TASK [Allow all access to tcp port 80] ******************************************************************<br \/>\nok: [203.0.113.10]<\/code><\/p>\n<p><code>RUNNING HANDLER [Restart Nginx] *************************************************************************<br \/>\nchanged: [203.0.113.10]<\/code><\/p>\n<p><code>PLAY RECAP **********************************************************************************************<br \/>\n203.0.113.10 : ok=7 changed=4 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0<\/code><\/p>\n<p>\u062f\u0631 \u062e\u0631\u0648\u062c\u06cc\u060c \u062e\u0648\u0627\u0647\u06cc\u062f \u062f\u06cc\u062f \u06a9\u0647 handler \u0628\u0627 \u0646\u0627\u0645 &#8220;Restart Nginx&#8221; \u062f\u0631\u0633\u062a \u0642\u0628\u0644 \u0627\u0632 \u067e\u0627\u06cc\u0627\u0646 play \u0627\u062c\u0631\u0627 \u0645\u06cc\u200c\u0634\u0648\u062f. \u067e\u0633 \u0627\u0632 \u0622\u0646\u060c \u0627\u06af\u0631 \u0628\u0627 \u0645\u0631\u0648\u0631\u06af\u0631 \u0628\u0647 IP \u0633\u0631\u0648\u0631 \u0645\u062a\u0635\u0644 \u0634\u0648\u06cc\u062f\u060c \u0635\u0641\u062d\u0647 \u0632\u06cc\u0631 \u0631\u0627 \u0645\u0634\u0627\u0647\u062f\u0647 \u062e\u0648\u0627\u0647\u06cc\u062f \u06a9\u0631\u062f:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/assets.digitalocean.com\/articles\/how-to-write-ansible-playbooks\/nginx\/ansible_practice-landing2.png\" alt=\"\u0635\u0641\u062d\u0647 \u0644\u0646\u062f\u06cc\u0646\u06af \u062c\u062f\u06cc\u062f \u067e\u0633 \u0627\u0632 \u0628\u0647\u200c\u0631\u0648\u0632\u0631\u0633\u0627\u0646\u06cc\" \/><\/p>\n<p>\u062f\u0631 \u0628\u062e\u0634 \u0628\u0639\u062f\u06cc \u0648 \u067e\u0627\u06cc\u0627\u0646\u06cc \u0627\u06cc\u0646 \u0633\u0631\u06cc \u0622\u0645\u0648\u0632\u0634\u06cc\u060c \u0647\u0645\u0647 \u0628\u062e\u0634\u200c\u0647\u0627 \u0631\u0627 \u0628\u0647 \u0647\u0645 \u0645\u062a\u0635\u0644 \u0645\u06cc\u200c\u06a9\u0646\u06cc\u0645 \u0648 \u06cc\u06a9 playbook \u0646\u0647\u0627\u06cc\u06cc \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc\u200c\u06a9\u0646\u06cc\u0645 \u06a9\u0647 \u0628\u0647 \u0635\u0648\u0631\u062a \u062e\u0648\u062f\u06a9\u0627\u0631 \u0633\u0631\u0648\u0631 Nginx \u0631\u0627 \u0631\u0627\u0647\u200c\u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0631\u062f\u0647 \u0648 \u0648\u0628\u200c\u0633\u0627\u06cc\u062a HTML \u0627\u0633\u062a\u0627\u062a\u06cc\u06a9 \u0631\u0627 \u0631\u0648\u06cc \u0622\u0646 \u0645\u0633\u062a\u0642\u0631 \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/p>\n<p>\u0627\u0632 \u0627\u06cc\u0646\u06a9\u0647 \u0647\u0645\u0631\u0627\u0647 \u067e\u0627\u0631\u0645\u06cc\u0646 \u06a9\u0644\u0648\u062f \u0647\u0633\u062a\u06cc\u062f\u060c \u0633\u067e\u0627\u0633\u06af\u0632\u0627\u0631\u06cc\u0645.<\/p>\n<\/div>\n<div style='text-align:center' class='yasr-auto-insert-visitor'><\/div>","protected":false},"excerpt":{"rendered":"<p>\u062f\u0631 \u06cc\u06a9 \u0646\u06af\u0627\u0647 \u06a9\u0644\u06cc\u060c handlers \u0647\u0627 \u06a9\u0627\u0631\u0647\u0627\u06cc \u0648\u06cc\u0698\u0647\u200c\u0627\u06cc \u0647\u0633\u062a\u0646\u062f \u06a9\u0647 \u062a\u0646\u0647\u0627 \u0632\u0645\u0627\u0646\u06cc \u0627\u062c\u0631\u0627 \u0645\u06cc\u200c\u0634\u0648\u0646\u062f \u06a9\u0647 \u062a\u0648\u0633\u0637 \u062f\u0633\u062a\u0648\u0631 notify \u0641\u0639\u0627\u0644 \u0634\u0648\u0646\u062f. handlers\u200c\u0647\u0627 \u062f\u0631 \u0627\u0646\u062a\u0647\u0627\u06cc \u0627\u062c\u0631\u0627\u06cc play\u060c \u067e\u0633 \u0627\u0632 \u0627\u062a\u0645\u0627\u0645 \u062a\u0645\u0627\u0645 \u062a\u0633\u06a9\u200c\u0647\u0627\u060c \u0627\u062c\u0631\u0627 \u0645\u06cc\u200c\u0634\u0648\u0646\u062f.\u062f\u0631 Ansible\u060c handlers \u0645\u0639\u0645\u0648\u0644\u0627\u064b \u0628\u0631\u0627\u06cc \u0634\u0631\u0648\u0639\u060c \u0628\u0627\u0631\u06af\u0630\u0627\u0631\u06cc \u0645\u062c\u062f\u062f\u060c \u0631\u06cc\u0633\u062a\u0627\u0631\u062a \u0648 \u062a\u0648\u0642\u0641 \u0633\u0631\u0648\u06cc\u0633\u200c\u0647\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc\u200c\u0634\u0648\u0646\u062f. \u0627\u06af\u0631 playbook \u0634\u0645\u0627 \u0634\u0627\u0645\u0644 \u062a\u063a\u06cc\u06cc\u0631 \u0641\u0627\u06cc\u0644\u200c\u0647\u0627\u06cc \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0628\u0627\u0634\u062f\u060c \u0627\u062d\u062a\u0645\u0627\u0644 \u0632\u06cc\u0627\u062f\u06cc [&hellip;]<\/p>\n","protected":false},"author":9,"featured_media":5882,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"yasr_overall_rating":0,"yasr_post_is_review":"","yasr_auto_insert_disabled":"","yasr_review_type":"","footnotes":""},"categories":[131,150],"tags":[720,722,719,721,723],"class_list":["post-5839","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-131","category-linux","tag-devops---","tag----ansible","tag-719","tag--nginx","tag--ansible"],"aioseo_notices":[],"yasr_visitor_votes":{"stars_attributes":{"read_only":false,"span_bottom":false},"number_of_votes":0,"sum_votes":0},"_links":{"self":[{"href":"https:\/\/parmin.cloud\/blog\/wp-json\/wp\/v2\/posts\/5839","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/parmin.cloud\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/parmin.cloud\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/parmin.cloud\/blog\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/parmin.cloud\/blog\/wp-json\/wp\/v2\/comments?post=5839"}],"version-history":[{"count":3,"href":"https:\/\/parmin.cloud\/blog\/wp-json\/wp\/v2\/posts\/5839\/revisions"}],"predecessor-version":[{"id":5881,"href":"https:\/\/parmin.cloud\/blog\/wp-json\/wp\/v2\/posts\/5839\/revisions\/5881"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/parmin.cloud\/blog\/wp-json\/wp\/v2\/media\/5882"}],"wp:attachment":[{"href":"https:\/\/parmin.cloud\/blog\/wp-json\/wp\/v2\/media?parent=5839"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/parmin.cloud\/blog\/wp-json\/wp\/v2\/categories?post=5839"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/parmin.cloud\/blog\/wp-json\/wp\/v2\/tags?post=5839"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}