{"id":231248,"date":"2022-12-30T20:17:00","date_gmt":"2022-12-30T17:17:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=231248"},"modified":"2022-12-25T22:08:08","modified_gmt":"2022-12-25T19:08:08","slug":"arbeta-med-curl-wordpress-och-betjaenad","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/sv\/arbeta-med-curl-wordpress-och-betjaenad\/","title":{"rendered":"Arbeta med cURL, WordPress och Betj\u00e4nad"},"content":{"rendered":"\n<p>Jag \u00e4r en av de typer som anv\u00e4nder <code>1.1.1.1<\/code>och <code>1.0.0.1<\/code>som mina <a href=\"https:\/\/1.1.1.1\/\" class=\"external external_icon\" rel=\"nofollow\" target=\"_blank\">prim\u00e4ra DNS-servrar<\/a>.<\/p>\n<p>Men ett problem som kommer med att anv\u00e4nda dessa som mina huvudsakliga DNS-servrar (och kanske andra, jag vet inte eftersom jag inte har provat dem) \u00e4r att n\u00e4r jag anv\u00e4nder cURL f\u00f6r att g\u00f6ra f\u00f6rfr\u00e5gningar till en tredjepartsserver, kommer ofta att resultera i en 404.<\/p>\n<p>Lyckligtvis finns det en enkel l\u00f6sning.<\/p>\n<h2>cURL, WordPress och Valet<\/h2>\n<p>Kort sagt, den enkla f\u00f6r\u00e4ndringen \u00e4r att l\u00e4gga till din lokala v\u00e4rd som en DNS-post till dina n\u00e4tverksinst\u00e4llningar.<\/p>\n<p>Om du \u00e4r intresserad av att se stegen som kr\u00e4vs f\u00f6r att g\u00f6ra detta och n\u00e5gon exempelkod som inte fungerar (f\u00f6re \u00e4ndringen, f\u00f6rst\u00e5s), l\u00e4s vidare.<\/p>\n<p>Observera att jag kommer att anv\u00e4nda sk\u00e4rmdumpar f\u00f6r detta, men om du \u00e4r bekv\u00e4m med att redigera DNS-filer p\u00e5 ditt ursprungliga operativsystem, kommer det att fungera lika bra.<\/p>\n<h3>Uppdaterar DNS<\/h3>\n<p>Beroende p\u00e5 vilket operativsystem du anv\u00e4nder, kommer hur du kommer fram till att \u00e4ndra DNS-inst\u00e4llningarna variera.<\/p>\n<p>Om du anv\u00e4nder macOS kommer fliken N\u00e4tverk och de avancerade alternativen f\u00f6r vilken adapter som helst att anv\u00e4nda f\u00f6r att ansluta till Internet att ge dig det du beh\u00f6ver uppdatera.<\/p>\n<p>P\u00e5 den sk\u00e4rmen klickar du p\u00e5 fliken DNS och l\u00e4gg sedan <code>127.0.0.1<\/code>till h\u00f6gst upp i listan.<\/p>\n<h3>Exempelkod<\/h3>\n<p>N\u00e4r det g\u00e4ller att se orsaken bakom att beh\u00f6va g\u00f6ra n\u00e5got s\u00e5dant h\u00e4r, har jag alltid <a href=\"https:\/\/gist.github.com\/tommcfarlin\/648da0d8f306d0f17984beeed80039c7#file-00-curl-example-php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">tyckt att det \u00e4r anv\u00e4ndbart att se exempelkod<\/a>. De fr\u00e4msta anledningarna \u00e4r att det ger oss n\u00e5got att testa innan vi g\u00f6r ovanst\u00e5ende \u00e4ndringar och sedan efter att vi har gjort \u00e4ndringarna ovan.<\/p>\n<pre><code>&lt;?php\ntry {\n    $curl = curl_init();\n    curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');\n    curl_setopt($curl, CURLOPT_URL, $url);\n    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);\n    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 0);\n    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);\n    $response = curl_exec($curl);\n\n    if (is_object($response)) {\n        return false;\n    }\n\n    if (false === $response) {\n        throw new Exception(curl_error($curl), curl_errno($curl));\n    }\n\n    curl_close($curl);\n} catch (Exception $e) {\n    trigger_error(\n        sprintf(\n            'Curl failed with error #%d: %s',\n            $e-&gt;getCode(),\n            $e-&gt;getMessage()\n        ),\n        E_USER_ERROR\n    );\n}<\/code><\/pre>\n<p>Med det sagt, h\u00e4r \u00e4r lite kod jag anv\u00e4nde som inte fungerar utan r\u00e4tt DNS-inst\u00e4llning ovan:<\/p>\n<p>Men n\u00e4r DNS har uppdaterats fungerar det bra. Och, f\u00f6r att vara tydlig, f\u00f6respr\u00e5kar jag fortfarande <code>[wp_safe_remote_get](https:\/\/developer.wordpress.org\/reference\/functions\/wp_safe_remote_get\/)<\/code>och <code>[wp_safe_remote_post](https:\/\/developer.wordpress.org\/reference\/functions\/wp_safe_remote_post\/)<\/code>men att projektens natur kommer ocks\u00e5 att diktera vilka begr\u00e4nsningar vi har.<\/p>\n<p>Ta dessutom en titt p\u00e5 dessa funktioner, om du har en chans, f\u00f6r att se vad som h\u00e4nder bakom kulisserna. \ud83d\ude42<\/p>\n<h2>Det \u00e4r allt<\/h2>\n<p>Som jag n\u00e4mnde tidigare \u00e4r det en enkel process. Jag har tyckt att det \u00e4r anv\u00e4ndbart att dela b\u00e5de vilken typ av kod som kan orsaka problemet, s\u00e5 om du ser n\u00e5got liknande och f\u00e5r ett liknande resultat med att anv\u00e4nda cURL, WordPress och Betj\u00e4nad, s\u00e5 vet du hur du l\u00f6ser det.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Inspelningsk\u00e4lla:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Varf\u00f6r uppdatera dina DNS-inst\u00e4llningar n\u00e4r du arbetar med cURL, WordPress och Betj\u00e4nad kan l\u00f6sa problem.<\/p>\n","protected":false},"author":1,"featured_media":236977,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[838,848,901,755,807,787,724,868],"tags":[1173],"class_list":["post-231248","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-guide-foer-nyboerjare","category-handledningar","category-koda","category-oeppen-kaella","category-php-9","category-programvara-med-oeppen-kaellkod","category-utvecklaren","category-wordpress-9","tag-affiai-sv"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/posts\/231248","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/comments?post=231248"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/posts\/231248\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/media\/236977"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/media?parent=231248"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/categories?post=231248"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/sv\/wp-json\/wp\/v2\/tags?post=231248"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}