<br />
<b>Warning</b>:  strpos() expects parameter 1 to be string, array given in <b>/home/theserverside/public_html/wp-includes/blocks.php</b> on line <b>20</b><br />
{"id":981,"date":"2015-12-29T01:01:19","date_gmt":"2015-12-29T01:01:19","guid":{"rendered":"http:\/\/www.theserverside.technology\/?p=981"},"modified":"2016-01-02T15:04:05","modified_gmt":"2016-01-02T15:04:05","slug":"","status":"publish","type":"post","link":"https:\/\/www.theserverside.technology\/it\/2015\/12\/29\/come-usare-php-7-versione-32-o-64bit-con-i-servizi-di-cloud-hosting-e-windows-azure-pack\/","title":{"rendered":"","raw":""},"content":{"rendered":"","protected":false,"raw":""},"excerpt":{"rendered":"","protected":false,"raw":""},"author":9,"featured_media":922,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_en_post_content":"PHP7 \u00e8 stato rilasciato il 3 Dicembre di quest'anno ed il primo aggiornamento (la v7.0.1) ha seguito a ruota il 17 Dicembre. Questa versione introduce molti cambiamenti, inclusi molti miglioramenti alle prestazioni quando si effettua un confronto con PHP 5.6 (si parla di un raddoppio delle prestazioni!), una gestione migliore della memoria che porta le applicazioni a consumarne meno ed il supporto per i runtime a 64bit. Ci sono ovviamente altre novit\u00e0 ma questi tre miglioramenti sono gi\u00e0 di per s\u00e9 una buona ragione per passare alla nuova versione. Ci potrebbero ovviamente essere problemi che impediscono l'aggiornamento alla v7, ad esempio codice non supportato o non pi\u00f9 raccomandato, ma se le vostre applicazioni lo consentono l'upgrade potrebbe essere consigliato per migliorare le prestazioni complessive.\r\n\r\nCi sono alcune estensioni che consentono l'installazione di PHP su Azure per iniziare ad usare da subito il nuovo framework ma queste estensioni non sono utilizzabili con <em>Windows Azure Pack<\/em> e gli hoster che ne fanno uso perch\u00e9 gli script di installazione hanno qualche problema, in particolare facendo riferimento al drive D: (come richiesto da Azure) invece che al drive C: (come richiesto in WAP) nel percorso virtualizzato o usando la variabile di ambiente <em>%HOME%<\/em> per essere compatibili con tutti e due gli ambienti. Questa \u00e8 per\u00f2 una buona occasione per esplorare ancora una volta le possibilit\u00e0 di personalizzazione di <em>Windows Azure Pack<\/em> e configurare PHP7 da soli, una cosa molto utile per capire il funzionamento degli account WAP e poter effettuare aggiornamenti successivi senza la necessit\u00e0 di attendere il rilascio di un altro script. Avere a disposizione PHP7 pu\u00f2 essere utile sia per sviluppare applicazioni che usino il nuovo framework sia per usare applicazioni compatibili come Wordpress, che da qualche tempo ha effettuato un refactoring del proprio codice per renderlo compatibile con la nuova versione del framework... estensioni, plugin e temi permettendo !\r\n\r\nQuesto tutorial \u00e8 stato provato con i servizi di <a href=\"http:\/\/www.vaisulweb.com\" target=\"_blank\">Cloud Hosting di VaiSulWeb<\/a> e considerato che la nostra azienda consente l'attivazione di account gratuiti per il testing e lo sviluppo,\u00a0\u00e8 facile iniziare a lavorare subito con framework di nuova generazione come ASP.NET 5 o PHP7. Visitate il nostro sito Web per richiedere il vostro account gratuito.\r\n<h3>[section label=\"Per iniziare\"]Per iniziare<\/h3>\r\nPer iniziare servir\u00e0 ovviamente scaricare PHP7 dal sito ufficiale, facendo attenzione a scaricare una <a href=\"http:\/\/windows.php.net\/download\/\" target=\"_blank\">distribuzione per Windows<\/a> che \u00e8 quella che servir\u00e0 per i nostri test. Possiamo navigare quindi sul sito Web di PHP e cercare una versione contrassegnata da VC14 x64 <em>Non-Thread-Safe<\/em> (NTS), ad esempio <a href=\"http:\/\/windows.php.net\/downloads\/releases\/php-7.0.1-nts-Win32-VC14-x64.zip\" target=\"_blank\">php-7.0.1-nts-Win32-VC14-x64.zip<\/a>. Quando il download terminer\u00e0, possiamo decomprimere il file ZIP e trasferire i file estratti sul nostro sito Web attraverso FTP. Inseriremo i file nella cartella <em>\/site\/bin\/php<\/em> in modo che la struttura delle nostre cartelle sia simile a quella evidenziata di seguito:\r\n<p style=\"padding-left: 30px;\"><span style=\"color: #008000;\"><em>site\/<\/em><\/span><\/p>\r\n<p style=\"padding-left: 60px;\"><span style=\"color: #008000;\"><em>bin\/<\/em><\/span><\/p>\r\n<p style=\"padding-left: 90px;\"><span style=\"color: #008000;\"><em>php\/<\/em><\/span><\/p>\r\n<p style=\"padding-left: 120px;\"><span style=\"color: #008000;\"><em>dev<\/em><\/span>\r\n<span style=\"color: #008000;\"><em> ext<\/em><\/span>\r\n<span style=\"color: #008000;\"><em> [...]\r\nphp.ini\r\n[...]<\/em><\/span>\r\n<span style=\"color: #008000;\"><em> php-cgi.exe<\/em><\/span>\r\n<span style=\"color: #008000;\"><em> [...]<\/em><\/span><\/p>\r\n<p style=\"padding-left: 30px;\"><span style=\"color: #008000;\"><em>wwwroot<\/em><\/span><\/p>\r\nOra che abbiamo PHP sul nostro sito Web, dobbiamo risolvere due problemi prima di poter usare il nuovo runtime: il primo \u00e8 comunicare all'ambiente di hosting che vogliamo usare questa nuova versione invece che una di quelle predefinite che possiamo selezionare dal Pannello di Controllo e supportate dalla piattaforma (le versioni dalla 5.3 alla 5.5), come mostrato di seguito:\r\n\r\n[caption id=\"attachment_933\" align=\"aligncenter\" width=\"300\"]<a href=\"http:\/\/www.theserverside.technology\/wp-content\/uploads\/2015\/12\/php7_01.jpg\"><img class=\"size-medium wp-image-933\" src=\"http:\/\/www.theserverside.technology\/wp-content\/uploads\/2015\/12\/php7_01-300x176.jpg\" alt=\"PHP runtimes available through Windows Azure Pack portal\" width=\"300\" height=\"176\" \/><\/a> I runtime di PHP disponibili nel Pannello di Controllo[\/caption]\r\n\r\n&nbsp;\r\n\r\nIl secondo problema da risolvere \u00e8 comunicare a PHP dove trovare il suo file di configurazione, il famoso <em>php.ini<\/em>. Quando si usano i runtime standard, Azure Pack indicher\u00e0 a PHP dove si trova il file di configurazione ma dato che usiamo un runtime personalizzato di cui la piattaforma non sa nulla, dobbiamo dire noi a PHP dove trovare il file di configurazione che abbiamo inserito nella cartella <em>\/site\/bin\/php<\/em>. Per adesso, rinominiamo semplicemente il file standard <em>php.ini-development<\/em> in <em>php.ini<\/em> in modo da avere un file gi\u00e0 pronto e configurato per i test. <span style=\"text-decoration: underline;\">Se non lo avete gi\u00e0 fatto, fatelo ora prima di procedere<\/span>.\r\n\r\nE' anche il momento di far notare che abbiamo trasferito il framework PHP ed i suoi file in una cartella esterna rispetto alla <em>wwwroot<\/em> che conterr\u00e0 i nostri file PHP e tutti i file ad essi collegati. In teoria potremmo spostare il framework e tutti i file all'interno di una sottocartella di <em>wwwroot<\/em> ma \u00e8 una buona idea non rendere raggiungibili questi file dal Web per motivi di sicurezza. Anche se l'accesso a molti di questi file sarebbe bloccato, \u00e8 buona norma non esporre sul Web elementi che non hanno bisogno di essere raggiungibili con un URL. In fondo, \u00e8 la stessa struttura che usa la nuova versione del framework ASP.NET, la versione 5.\r\n<h3>[section label=\"Come usare il nuovo runtime\"]Come usare il nuovo runtime<\/h3>\r\nOra che abbiamo il nuovo runtime online, dobbiamo modificare il gestore dei file PHP per il nostro sito Web. Nel Pannello di Controllo, le impostazioni per i file PHP non compaiono perch\u00e9 sono gestite automaticamente dalla piattaforma in base alla selezione dell'utente ed il percorso al file <em>php-cgi.exe<\/em> \u00e8 inviato al server Web quando viene eseguito un file PHP. Tuttavia la nostra piattaforma non sa niente di PHP7 e dei file che abbiamo memorizzato in un percorso diverso quindi dobbiamo modificare le impostazioni per indicare alla piattaforma dove si trovi il file <em>php-cgi.exe<\/em> che useremo per avviare PHP7.\r\n\r\nCi sono in effetti pi\u00f9 modi per effettuare questa modifica, inclusa una modifica della configurazione del sito attraverso un file di trasformazione XDT, ma il modo pi\u00f9 semplice e veloce consiste nell'aggiungere un nuovo elemento nella sezione <em>handler mappings<\/em> all'interno del Pannello di Controllo, come mostrato di seguito.\r\n\r\n[caption id=\"attachment_938\" align=\"aligncenter\" width=\"300\"]<a href=\"http:\/\/www.theserverside.technology\/wp-content\/uploads\/2015\/12\/php7_02.jpg\"><img class=\"size-medium wp-image-938\" src=\"http:\/\/www.theserverside.technology\/wp-content\/uploads\/2015\/12\/php7_02-300x176.jpg\" alt=\"The new handler mappings entry to tell Azure Pack what runtime to use with PHP files.\" width=\"300\" height=\"176\" \/><\/a> Aggiungere un elemento per indicare ad Azure Pack dove trovare il runtime PHP.[\/caption]\r\n\r\nBaster\u00e0 effettuare questa modifica per cambiare la gestione dei file PHP (<em>*.php<\/em>). Non dimenticate di salvare le nuove impostazioni e riavviare il sito Web. Ora il nostro sito Web \u00e8 configurato per eseguire il nuovo runtime quando si invoca un file PHP ma abbiamo ancora un problema da risolvere.\r\n<h3>[section label=\"Indicare a PHP dove si trova il file di configurazione\"]Indicare a PHP dove si trova il file di configurazione - la soluzione pi\u00f9 facile<\/h3>\r\nCi sono un paio di modi per indicare a PHP dove cercare il proprio file di configurazione ma il metodo pi\u00f9 veloce \u00e8 indicare esplicitamente a PHP il suo percorso fisico attraverso la sezione <em>handler mappings<\/em> del portale di gestione. Ogni volta che verr\u00e0 eseguito il file <em>php-cgi.exe<\/em>, il file di configurazione verr\u00e0 caricato dalla posizione indicata ma visto che i processi FastCGI vengono riutilizzati e non sono distrutti dopo l'utilizzo, questa operazione verr\u00e0 effettuata solo una volta ogni tanto, dopo qualche migliaio di esecuzioni di script PHP o dopo il timeout del processo. Questo non avr\u00e0 quindi un grande impatto sulle prestazioni del runtime. La configurazione del gestore \u00e8 abbastanza semplice, come indicato dalla figura di seguito:\r\n\r\n[caption id=\"attachment_946\" align=\"aligncenter\" width=\"300\"]<a href=\"http:\/\/www.theserverside.technology\/wp-content\/uploads\/2015\/12\/php7_03.jpg\"><img class=\"size-medium wp-image-946\" src=\"http:\/\/www.theserverside.technology\/wp-content\/uploads\/2015\/12\/php7_03-300x176.jpg\" alt=\"How to tell PHP where to look for its configuration file\" width=\"300\" height=\"176\" \/><\/a> Come dire a PHP dove si trova il suo file di configurazione[\/caption]\r\n\r\nCome \u00e8 possibile notare, si aggiunge il percorso al file <em>php.ini<\/em> usando il parametro \"-c\" supportato da <em>php-cgi.exe<\/em>. E' anche possibile usare la variabile d'ambiente %HOME% per rendere questo percorso relativo ed evitare di indicare quello completo. Il file <em>php.ini<\/em> di solito si trova all'interno della cartella di PHP ma in teoria pu\u00f2 essere posizionato dove si vuole.\r\n\r\nDopo aver riavviato il sito Web, se provate ad eseguire un file PHP, come ad esempio una semplice chiamata a <em>phpinfo()<\/em>, dovreste visualizzare la nota schermata di visualizzazione informazioni sul framework, come mostrato di seguito:\r\n\r\n[caption id=\"attachment_948\" align=\"aligncenter\" width=\"300\"]<a href=\"http:\/\/www.theserverside.technology\/wp-content\/uploads\/2015\/12\/php7_04.jpg\"><img class=\"size-medium wp-image-948\" src=\"http:\/\/www.theserverside.technology\/wp-content\/uploads\/2015\/12\/php7_04-300x204.jpg\" alt=\"PHP 7.0.1 running on Windows Azure Pack\" width=\"300\" height=\"204\" \/><\/a> PHP 7.0.1\u00a0in esecuzione su\u00a0Windows Azure Pack[\/caption]\r\n\r\nPerfetto ! Ma come possiamo sapere se stiamo eseguendo la versione a 64bit di PHP ? Baster\u00e0 dare una occhiata alla linea \"Architechture\" della schermata oppure eseguire questo <a href=\"http:\/\/stackoverflow.com\/questions\/6303241\/find-windows-32-or-64-bit-using-php\" target=\"_blank\">script trovato su Stackoverflow<\/a>:\r\n<div style=\"padding-left: 30px; font-size: 0.7em;\"><span style=\"color: #008000;\"><em><span class=\"pun\">&lt;?<\/span><span class=\"pln\">php\r\n<\/span><span class=\"kwd\">switch<\/span><span class=\"pun\">(<\/span><span class=\"pln\">PHP_INT_SIZE<\/span><span class=\"pun\">)<\/span> <span class=\"pun\">{<\/span><\/em><\/span>\r\n<p style=\"padding-left: 60px;\"><span style=\"color: #008000;\"><em><span class=\"kwd\">case<\/span> <span class=\"lit\">4<\/span><span class=\"pun\">:<\/span><span class=\"pln\">\r\necho <\/span><span class=\"str\">'32-bit version of PHP'<\/span><span class=\"pun\">;<\/span><\/em><\/span>\r\n<span style=\"color: #008000;\"> <em> <span class=\"kwd\">break<\/span><span class=\"pun\">;<\/span><\/em><\/span><\/p>\r\n<p style=\"padding-left: 60px;\"><span style=\"color: #008000;\"><em><span class=\"kwd\">case<\/span> <span class=\"lit\">8<\/span><span class=\"pun\">:<\/span><span class=\"pln\">\r\necho <\/span><span class=\"str\">'64-bit version of PHP'<\/span><span class=\"pun\">;<\/span><\/em><\/span>\r\n<span style=\"color: #008000;\"> <em> <span class=\"kwd\">break<\/span><span class=\"pun\">;<\/span><\/em><\/span><\/p>\r\n<p style=\"padding-left: 60px;\"><span style=\"color: #008000;\"><em><span class=\"kwd\">default<\/span><span class=\"pun\">:<\/span><span class=\"pln\">\r\necho <\/span><span class=\"str\">'PHP_INT_SIZE is '<\/span> <span class=\"pun\">.<\/span><span class=\"pln\"> PHP_INT_SIZE<\/span><span class=\"pun\">;<\/span><\/em><\/span><\/p>\r\n<p style=\"padding-left: 30px;\"><span style=\"color: #008000;\"><em><span class=\"pun\">}<\/span><\/em><\/span><\/p>\r\n\r\n<\/div>\r\nSe inserite questo script nella cartella\u00a0radice\u00a0del sito Web (chiamandolo per esempio <em>check64.php<\/em>) \u00e8 possibile eseguire il file ed avere conferma che si sta eseguendo la versione 64bit di PHP.\r\n<h3>[section label=\"Ottimizzare l'esperienza PHP7\"]Ottimizzare l'esperienza PHP7<\/h3>\r\nOra che PHP7 pu\u00f2 essere eseguito, ci sono un paio di impostazioni che possiamo modificare per fornire prestazioni migliori alle applicazioni che lo usino. Prima di tutto, da PHP5.5 in poi Zend ha implementato un proprio modulo di OpCode caching. In passato molti siti Web e servizi di hosting hanno usato i cosiddetti <em>acceleratori<\/em> per PHP per migliorare le prestazioni del framework attraverso l'uso di diversi strati di caching. Sulla piattaforma Windows, Microsoft ha sviluppato <em>WinCache<\/em>, un modulo usato per molto tempo per migliorare le prestazioni di PHP. Microsoft ha rilasciato una nuova versione di WinCache sviluppata per funzionare con PHP7 ma da quando Zend ha fornito il proprio modulo di OpCode chaching, ha deciso di non duplicare le funzionalit\u00e0 e rimuoverle dal proprio modulo, suggerendo l'uso\u00a0di quello\u00a0di Zend.\r\n\r\nPer migliorare le prestazioni dobbiamo quindi abilitare sia l'OpCode caching di Zend, sia il modulo WinCache di Microsoft. Per prima cosa, aggiungiamo a <em>php.ini<\/em> le seguenti linee:\r\n<div style=\"padding-left: 30px; font-size: 0.8em;\"><span style=\"color: #008000;\"><em>zend_extension=C:\\home\\site\\bin\\php\\ext\\php_opcache.dll<\/em><\/span><\/div>\r\n<div style=\"padding-left: 30px;\"><\/div>\r\n<div style=\"padding-left: 30px;\"><span style=\"color: #008000;\"><em>[opcache] <\/em><\/span>\r\n<span style=\"color: #008000;\"><em>opcache.enable=1<\/em><\/span><\/div>\r\nda posizionare subito dopo questa linea:\r\n<p style=\"padding-left: 30px; font-size: 0.8em;\"><span style=\"color: #008000;\">engine=On<\/span><\/p>\r\nIl modulo di Zend non \u00e8 il classico modulo PHP quindi bisogna aggiungerlo al runtime molto presto, durante le prime impostazioni del file di configurazione quindi inserirlo\u00a0nella posizione indicata \u00e8 una buona idea. Notate che non possiamo usare la variabile d'ambiente <em>%HOME%<\/em> nel file php.ini, quindi dobbiamo usare il percorso fisico completo. Potremmo personalizzare molte altre impostazioni relative al modulo OpCache ma la sua abilitazione \u00e8 sufficiente per migliorare le prestazioni con le impostazioni standard. Eseguendo nuovamente una chiamata <em>phpinfo()<\/em> dovremmo ora essere in grado di visualizzare il modulo OPCache tra quelli attivi, come indicato di seguito:\r\n\r\n[caption id=\"attachment_954\" align=\"aligncenter\" width=\"300\"]<a href=\"http:\/\/www.theserverside.technology\/wp-content\/uploads\/2015\/12\/php7_05.jpg\"><img class=\"size-medium wp-image-954\" src=\"http:\/\/www.theserverside.technology\/wp-content\/uploads\/2015\/12\/php7_05-300x204.jpg\" alt=\"Zend OpCode enabled for your website\" width=\"300\" height=\"204\" \/><\/a> Il modulo OpCache di Zend abilitato per il sito Web[\/caption]\r\n\r\nOra dobbiamo aggiungere il modulo WinCache quindi effettuiamo innanzitutto il download del\u00a0software dall'indirizzo:\r\n\r\n<a href=\"http:\/\/sourceforge.net\/projects\/wincache\/files\/wincache-2.0.0\/\" target=\"_blank\">http:\/\/sourceforge.net\/projects\/wincache\/files\/wincache-2.0.0\/<\/a>\r\n\r\nRicordate di scaricare il file a 64bit, quindi per esempio <i>wincache-2.0.0.2-7.0-nts-vc14-x64.exe<\/i>,\u00a0e poi effettuare l'upload del file <em>php_wincache.dll<\/em> nella cartella <em>\/site\/bin\/php\/ext<\/em> del sito Web. Bisogner\u00e0 poi modificare di nuovo il file <em>php.ini<\/em> per includere\r\n<p style=\"padding-left: 30px;\"><em><span style=\"color: #008000;\">extension = php_wincache.dll<\/span><\/em><\/p>\r\nSi potr\u00e0 ora salvare il file di configurazione e riavviare il sito Web per assicurarsi che le nuove impostazioni siano applicate e caricate. Lanciando di nuovo una chiamata a <em>phpinfo()<\/em> si dovrebbe ora trovare il modulo <em>WinCache<\/em> tra quelli attivi, anche\u00a0qui con i parametri di default.\r\n<h3>[section label=\"Conclusioni\"]Conclusioni<\/h3>\r\nLo scopo di questo tutorial era quello di dimostrare quanto sia flessibile l'hosting attraverso la piattaforma <em>Windows Azure Pack<\/em>, tanto da consentire anche di personalizzare l'ambiente per includere un runtime non supportato direttamente dalla piattaforma stessa. Con la scusa di provare PHP7, siamo stati in grado di modificare la gestione standard dei file PHP sostituendola con una personalizzata, installare un nuovo runtime, passare all'esecuzione a 64bit, personalizzare il file <em>php.ini<\/em> ed aggiungere sia il modulo OpCache che quello WinCache e non abbiamo avuto bisogno del supporto dell'hoster per effettuare tutte queste operazioni.\r\n\r\nCon <a href=\"http:\/\/www.vaisulweb.com\" target=\"_blank\">VaiSulWeb<\/a>\u00a0abbiamo modificato\u00a0la tecnologia di base per i nostri servizi di hosting, passando alla nuova piattaforma Windows basata su Azure Pack. Stiamo attualmente ospitando siti Web di tutte le dimensioni, da quelli personali ad altri molto popolari con milioni di pagine visualizzate ogni mese.\u00a0I nostri clienti\u00a0stanno apprezzando\u00a0la flessibilit\u00e0 e le potenzialit\u00e0 del nuovo modello di hosting su piattaforma Windows. Non posso che raccomandare di attivare un account gratuito di test per i nostri servizi di Cloud Hosting e provare le potenzialit\u00e0 del nuovo modello di hosting per sviluppare soluzioni basate su framework di nuova generazione come ASP.NET 5 o PHP7. Sebbene gli account gratuiti non consentano l'esecuzione a 64bit, tutte le altre funzionalit\u00e0 di cui abbiamo discusso in questo tutorial sono supportate.\r\n\r\n&nbsp;\r\n\r\n&nbsp;\r\n\r\n&nbsp;\r\n\r\n&nbsp;","_en_post_name":"come-usare-php-7-versione-32-o-64bit-con-i-servizi-di-cloud-hosting-e-windows-azure-pack","_en_post_excerpt":"","_en_post_title":"Come usare PHP 7 versione 32 o 64bit con i servizi di Cloud Hosting e Windows Azure Pack","_it_post_content":"","_it_post_name":"","_it_post_excerpt":"","_it_post_title":"","edit_language":"it"},"categories":[2,91],"tags":[167,194],"_links":{"self":[{"href":"https:\/\/www.theserverside.technology\/it\/wp-json\/wp\/v2\/posts\/981"}],"collection":[{"href":"https:\/\/www.theserverside.technology\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.theserverside.technology\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.theserverside.technology\/it\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/www.theserverside.technology\/it\/wp-json\/wp\/v2\/comments?post=981"}],"version-history":[{"count":24,"href":"https:\/\/www.theserverside.technology\/it\/wp-json\/wp\/v2\/posts\/981\/revisions"}],"predecessor-version":[{"id":1023,"href":"https:\/\/www.theserverside.technology\/it\/wp-json\/wp\/v2\/posts\/981\/revisions\/1023"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.theserverside.technology\/it\/wp-json\/wp\/v2\/media\/922"}],"wp:attachment":[{"href":"https:\/\/www.theserverside.technology\/it\/wp-json\/wp\/v2\/media?parent=981"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.theserverside.technology\/it\/wp-json\/wp\/v2\/categories?post=981"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.theserverside.technology\/it\/wp-json\/wp\/v2\/tags?post=981"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}