{"id":91701,"date":"2020-08-17T07:42:05","date_gmt":"2020-08-17T05:42:05","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/kak-sluchajno-napisat-web-gui-dlya-haproxy"},"modified":"2020-08-17T07:42:05","modified_gmt":"2020-08-17T05:42:05","slug":"kak-sluchajno-napisat-web-gui-dlya-haproxy","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/kak-sluchajno-napisat-web-gui-dlya-haproxy","title":{"rendered":"Comment \u00e9crire par accident un Web-GUI pour Haproxy","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Le monde moderne des administrateurs syst\u00e8me nous a g\u00e2t\u00e9s avec de belles interfaces web, au point o\u00f9 l'on n'a m\u00eame plus envie d'installer des logiciels qui n'ont pas cette fameuse interface graphique (je sens que je vais recevoir des critiques de la part des puristes), mais il est vrai qu'on ne peut pas constamment aller dans la ligne de commande, n'est-ce pas ? Tout irait bien si l'on pouvait installer le logiciel, le configurer et l'oublier, mais que faire lorsque l'on doit y aller r\u00e9guli\u00e8rement pour modifier des choses, et bien s\u00fbr qu'il n'y a pas de journal de toutes les actions ? On ne va pas \u00e9crire \u00e0 chaque fois cp cfg cfg_back, avec le temps on s'y perd et on finit par abandonner.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habrastorage.org\/webt\/lm\/yl\/3g\/lmyl3gjbzhzlqdig_cmrzg3yl3w.jpeg\"><img decoding=\"async\" alt=\"Comment \u00e9crire par accident un Web-GUI pour Haproxy\" src=\"\/wp-content\/uploads\/2020\/08\/874da79a28fbc29d1fd6511463ba14a5.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nIl y a de nombreuses ann\u00e9es, j'ai d\u00e9couvert un merveilleux \u00e9quilibreur de charge, Haproxy. Tout \u00e9tait magnifique et fonctionne \u00e0 merveille. J'en ai eu beaucoup et j'ai commenc\u00e9 \u00e0 chercher une interface graphique pour cela, mais \u00e0 ma grande surprise, il n'y en avait pas. Un logiciel tr\u00e8s populaire, et pourtant assez ancien, mais bon, j'ai pens\u00e9 que ce n'\u00e9tait pas grave et j'ai continu\u00e9 \u00e0 faire quelques modifications \u00e0 la main dans mon \u00e9diteur vi pr\u00e9f\u00e9r\u00e9, tout en ayant une multitude d'onglets ouverts avec des statistiques de toutes les connexions actives. <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/fr\/server\/\"   title=\"serveurs\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1510\">serveurs<\/a>. Mais le moment est venu o\u00f9 j'ai d\u00fb r\u00e9pondre aux \"besoins\" des utilisateurs qui \u00e9crivaient des logiciels pour travailler via http, et c'est l\u00e0 que les choses int\u00e9ressantes ont commenc\u00e9... <\/p>\n<p>Les mains d\u00e9mangeaient, les yeux brillaient et je me suis lanc\u00e9. Plus pr\u00e9cis\u00e9ment, j'ai commenc\u00e9 \u00e0 r\u00e9fl\u00e9chir \u00e0 quel langage utiliser, me rem\u00e9morant le PHP que j'avais oubli\u00e9 depuis longtemps, mais \u00e7a ne me tentait pas trop, et je trouvais qu'il n'\u00e9tait pas vraiment adapt\u00e9 pour cela. Au final, mon choix s'est port\u00e9 sur Python, qui serait sans aucun doute utile \u00e0 l'avenir, et j'ai commenc\u00e9 \u00e0 m'impr\u00e9gner d'informations.<\/p>\n<p>Au d\u00e9but, les t\u00e2ches n'\u00e9taient pas si compliqu\u00e9es : la possibilit\u00e9 de modifier les fichiers de configuration depuis une interface web en un seul point d'entr\u00e9e, ainsi que la sauvegarde des versions pr\u00e9c\u00e9dentes des fichiers de configuration. Cette fonctionnalit\u00e9, pas particuli\u00e8rement grande, a \u00e9t\u00e9 r\u00e9alis\u00e9e assez rapidement, mais \u00e0 ce moment-l\u00e0, j'ai eu soit la paresse d'administrateur, soit ce fameux perfectionnisme et cela m'a sembl\u00e9, bien s\u00fbr, insuffisant. Et c'est l\u00e0 que des fonctionnalit\u00e9s telles que : la comparaison de deux fichiers de configuration, la journalisation de toutes les actions li\u00e9es aux fichiers de configuration, l'API Runtime et l'ajout de sections via le web ont commenc\u00e9 \u00e0 appara\u00eetre.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habrastorage.org\/webt\/tx\/rk\/hg\/txrkhgoa8-zmpuvx1gswjkj2vou.jpeg\"><img decoding=\"async\" alt=\"Comment \u00e9crire par accident un Web-GUI pour Haproxy\" src=\"\/wp-content\/uploads\/2020\/08\/abb93ee655e49bddd7367821eec781d0.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p>Et en tant qu'administrateur UNIX respectable vivant gr\u00e2ce aux logiciels libres, j'ai d\u00e9cid\u00e9 de partager cela avec le monde, au cas o\u00f9 cela pourrait \u00eatre utile \u00e0 quelqu'un. Mais pour cela, il fallait faire en sorte de ne pas avoir \u00e0 fouiller dans le code, mais au maximum dans les fichiers de configuration. (Actuellement, la plupart des param\u00e8tres ont \u00e9t\u00e9 transf\u00e9r\u00e9s dans une base de donn\u00e9es. \u00c0 mon avis, il est devenu plus pratique de les modifier, et lors des mises \u00e0 jour, il n'y aura pas d'erreur due \u00e0 l'absence d'un param\u00e8tre dans le fichier de configuration.) <\/p>\n<p>Un mois apr\u00e8s, j'ai publi\u00e9 mon projet sur Github sans vraiment m'attendre \u00e0 quoi que ce soit. Et \u00e0 tort, le logiciel s'est r\u00e9v\u00e9l\u00e9 l\u00e9g\u00e8rement demand\u00e9 et l\u00e0, l'aventure a commenc\u00e9... Le d\u00e9veloppement actif dure d\u00e9j\u00e0 presque un an. Parfois, j'ai envie d'abandonner, car mes besoins sont d\u00e9j\u00e0 satisfaits depuis longtemps. Mais pourquoi aurais-je besoin de la possibilit\u00e9 de d\u00e9ployer un \u00ab cluster \u00bb avec keepalived et HAProxy via une interface web, alors que cela ne me prend au maximum que quelques minutes ? Les gens en ont besoin, apparemment, et cela m'int\u00e9resse, donc j'ai de quoi m'occuper. Bien s\u00fbr, il y a aussi des fonctionnalit\u00e9s dont j'ai besoin, par exemple, la surveillance des serveurs backend, pour v\u00e9rifier s'ils sont accessibles pour Haproxy. Nous avons bien s\u00fbr une surveillance d'entreprise, mais il y a des gens qui peuvent prendre leur temps pour r\u00e9agir, et puisque mon d\u00e9partement s'occupe du d\u00e9veloppement, le logiciel appara\u00eet et dispara\u00eet, ce qui n\u00e9cessite souvent de lutter contre la bureaucratie.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habrastorage.org\/webt\/_b\/th\/pl\/_bthplwgh1ggsiutfblcd6exbg4.jpeg\"><img decoding=\"async\" alt=\"Comment \u00e9crire par accident un Web-GUI pour Haproxy\" src=\"\/wp-content\/uploads\/2020\/08\/72427d65430c891959b68c54efd8ab4a.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p>En gros, j'ai d\u00e9cid\u00e9 de partager cela, car il s'av\u00e8re que c'est le seul GUI gratuit. Qui sait, cela pourrait \u00eatre utile \u00e0 quelqu'un ? <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/Aidaho12\/haproxy-wi\">Lien vers GitHub<\/a><\/noindex>.<br \/>\n<br \/>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/419865\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0421\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0439 \u043c\u0438\u0440 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u0432 \u043e\u0431\u043b\u0435\u043d\u0438\u043b \u043d\u0430\u0441 \u043a\u0440\u0430\u0441\u0438\u0432\u044b\u043c\u0438 web-face-\u0430\u043c\u0438, \u0447\u0442\u043e \u0434\u0430\u0436\u0435 \u043d\u0435 \u043e\u0445\u043e\u0442\u0430 \u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0441\u043e\u0444\u0442, \u0433\u0434\u0435 \u043d\u0435\u0442 \u044d\u0442\u043e\u0433\u043e \u0441\u0430\u043c\u043e\u0433\u043e \u00ab\u0433\u0443\u044f\u00bb (\u0447\u0443\u0432\u0441\u0442\u0432\u0443\u044e \u0441\u0435\u0439\u0447\u0430\u0441 \u043f\u043e\u043b\u0435\u0442\u044f\u0442 \u043a\u0430\u043c\u043d\u0438 \u043e\u0442 \u043f\u0440\u0430\u0432\u043e\u0432\u0435\u0440\u043d\u044b\u0445 \u0441\u0442\u0440\u043e\u0447\u043a\u0435\u0440\u043e\u0432), \u043d\u0443 \u043d\u0435 \u0447\u0435\u0440\u0435\u0437 \u0441\u0442\u0440\u043e\u043a\u0443 \u0436\u0435 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u0442\u0443\u0434\u0430 \u043b\u0430\u0437\u0438\u0442\u044c, \u043f\u0440\u0430\u0432\u0434\u0430? \u0412\u0441\u0435 \u0431\u044b \u043d\u0438\u0447\u0435\u0433\u043e, \u0435\u0441\u043b\u0438 \u0441\u043e\u0444\u0442 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u043b, \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u043b \u0438 \u0437\u0430\u0431\u044b\u043b, \u0430 \u0447\u0442\u043e \u0434\u0435\u043b\u0430\u0442\u044c, \u0435\u0441\u043b\u0438 \u0442\u0443\u0434\u0430 \u043d\u0430\u0434\u043e \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u043b\u0430\u0437\u0438\u0442\u044c, \u043f\u0440\u0430\u0432\u0438\u0442\u044c, \u043d\u0443 \u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":91702,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-91701","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0421\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0439 \u043c\u0438\u0440 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u0432 \u043e\u0431\u043b\u0435\u043d\u0438\u043b \u043d\u0430\u0441 \u043a\u0440\u0430\u0441\u0438\u0432\u044b\u043c\u0438 web-face-\u0430\u043c\u0438, \u0447\u0442\u043e \u0434\u0430\u0436\u0435 \u043d\u0435 \u043e\u0445\u043e\u0442\u0430 \u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0441\u043e\u0444\u0442, \u0433\u0434\u0435 \u043d\u0435\u0442 \u044d\u0442\u043e\u0433\u043e \u0441\u0430\u043c\u043e\u0433\u043e \u00ab\u0433\u0443\u044f\u00bb (\u0447\u0443\u0432\u0441\u0442\u0432\u0443\u044e \u0441\u0435\u0439\u0447\u0430\u0441 \u043f\u043e\u043b\u0435\u0442\u044f\u0442 \u043a\u0430\u043c\u043d\u0438 \u043e\u0442 \u043f\u0440\u0430\u0432\u043e\u0432\u0435\u0440\u043d\u044b\u0445 \u0441\u0442\u0440\u043e\u0447\u043a\u0435\u0440\u043e\u0432), \u043d\u0443 \u043d\u0435 \u0447\u0435\u0440\u0435\u0437 \u0441\u0442\u0440\u043e\u043a\u0443 \u0436\u0435.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/kak-sluchajno-napisat-web-gui-dlya-haproxy\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041a\u0430\u043a \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c Web-GUI \u0434\u043b\u044f Haproxy | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0421\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0439 \u043c\u0438\u0440 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u0432 \u043e\u0431\u043b\u0435\u043d\u0438\u043b \u043d\u0430\u0441 \u043a\u0440\u0430\u0441\u0438\u0432\u044b\u043c\u0438 web-face-\u0430\u043c\u0438, \u0447\u0442\u043e \u0434\u0430\u0436\u0435 \u043d\u0435 \u043e\u0445\u043e\u0442\u0430 \u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0441\u043e\u0444\u0442, \u0433\u0434\u0435 \u043d\u0435\u0442 \u044d\u0442\u043e\u0433\u043e \u0441\u0430\u043c\u043e\u0433\u043e \u00ab\u0433\u0443\u044f\u00bb (\u0447\u0443\u0432\u0441\u0442\u0432\u0443\u044e \u0441\u0435\u0439\u0447\u0430\u0441 \u043f\u043e\u043b\u0435\u0442\u044f\u0442 \u043a\u0430\u043c\u043d\u0438 \u043e\u0442 \u043f\u0440\u0430\u0432\u043e\u0432\u0435\u0440\u043d\u044b\u0445 \u0441\u0442\u0440\u043e\u0447\u043a\u0435\u0440\u043e\u0432), \u043d\u0443 \u043d\u0435 \u0447\u0435\u0440\u0435\u0437 \u0441\u0442\u0440\u043e\u043a\u0443 \u0436\u0435.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/kak-sluchajno-napisat-web-gui-dlya-haproxy\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-08-17T05:42:05+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-08-17T05:42:05+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Comment cr\u00e9er accidentellement un Web-GUI pour Haproxy | ProHoster","description":"Le monde moderne des administrateurs syst\u00e8mes nous a habitu\u00e9s \u00e0 de belles interfaces web, au point qu'on n'a m\u00eame plus envie d'installer des logiciels sans ce fameux \u00ab GUI \u00bb (je sens que je vais susciter la col\u00e8re des puristes de la ligne de commande), mais ce n'est pas juste une question de ligne de commande.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/kak-sluchajno-napisat-web-gui-dlya-haproxy","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041a\u0430\u043a \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c Web-GUI \u0434\u043b\u044f Haproxy | ProHoster","og:description":"\u0421\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0439 \u043c\u0438\u0440 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u0432 \u043e\u0431\u043b\u0435\u043d\u0438\u043b \u043d\u0430\u0441 \u043a\u0440\u0430\u0441\u0438\u0432\u044b\u043c\u0438 web-face-\u0430\u043c\u0438, \u0447\u0442\u043e \u0434\u0430\u0436\u0435 \u043d\u0435 \u043e\u0445\u043e\u0442\u0430 \u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0441\u043e\u0444\u0442, \u0433\u0434\u0435 \u043d\u0435\u0442 \u044d\u0442\u043e\u0433\u043e \u0441\u0430\u043c\u043e\u0433\u043e \u00ab\u0433\u0443\u044f\u00bb (\u0447\u0443\u0432\u0441\u0442\u0432\u0443\u044e \u0441\u0435\u0439\u0447\u0430\u0441 \u043f\u043e\u043b\u0435\u0442\u044f\u0442 \u043a\u0430\u043c\u043d\u0438 \u043e\u0442 \u043f\u0440\u0430\u0432\u043e\u0432\u0435\u0440\u043d\u044b\u0445 \u0441\u0442\u0440\u043e\u0447\u043a\u0435\u0440\u043e\u0432), \u043d\u0443 \u043d\u0435 \u0447\u0435\u0440\u0435\u0437 \u0441\u0442\u0440\u043e\u043a\u0443 \u0436\u0435.","og:url":"https:\/\/prohoster.info\/fr\/blog\/administrirovanie\/kak-sluchajno-napisat-web-gui-dlya-haproxy","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-08-17T05:42:05+00:00","article:modified_time":"2020-08-17T05:42:05+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"91701","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 12:22:24","updated":"2026-02-09 16:50:33","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/91701","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=91701"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/91701\/revisions"}],"predecessor-version":[{"id":158754,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/91701\/revisions\/158754"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media\/91702"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=91701"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=91701"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=91701"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}