{"id":231199,"date":"2022-12-30T19:56:00","date_gmt":"2022-12-30T16:56:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=231199"},"modified":"2022-12-25T22:08:07","modified_gmt":"2022-12-25T19:08:07","slug":"praca-z-curl-wordpress-i-valet","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/pl\/praca-z-curl-wordpress-i-valet\/","title":{"rendered":"Praca z cURL, WordPress i Valet"},"content":{"rendered":"\n<p>Nale\u017c\u0119 do tych, kt\u00f3rzy u\u017cywaj\u0105 <code>1.1.1.1<\/code>i <code>1.0.0.1<\/code>jako moich <a href=\"https:\/\/1.1.1.1\/\" class=\"external external_icon\" rel=\"nofollow\" target=\"_blank\">podstawowych serwer\u00f3w DNS<\/a>.<\/p>\n<p>Ale jednym problemem zwi\u0105zanym z u\u017cywaniem ich jako moich g\u0142\u00f3wnych serwer\u00f3w DNS (i mo\u017ce innych, nie wiem, poniewa\u017c ich nie wypr\u00f3bowa\u0142em) jest to, \u017ce gdy u\u017cywam cURL do wysy\u0142ania \u017c\u0105da\u0144 do serwera innej firmy, cz\u0119sto spowoduje b\u0142\u0105d 404.<\/p>\n<p>Na szcz\u0119\u015bcie jest \u0142atwe rozwi\u0105zanie.<\/p>\n<h2>cURL, WordPress i Valet<\/h2>\n<p>Kr\u00f3tko m\u00f3wi\u0105c, prost\u0105 zmian\u0105 jest dodanie lokalnego hosta jako wpisu DNS do preferencji sieciowych.<\/p>\n<p>Je\u015bli chcesz zobaczy\u0107 kroki niezb\u0119dne do wykonania tego i przyk\u0142adowy kod, kt\u00f3ry nie zadzia\u0142a (oczywi\u015bcie przed zmian\u0105), czytaj dalej.<\/p>\n<p>Pami\u0119taj, \u017ce zamierzam u\u017cy\u0107 do tego zrzut\u00f3w ekranu, ale je\u015bli nie masz nic przeciwko edycji plik\u00f3w DNS w swoim natywnym systemie operacyjnym, b\u0119dzie to dzia\u0142a\u0107 r\u00f3wnie dobrze.<\/p>\n<h3>Aktualizuj\u0119 DNS<\/h3>\n<p>W zale\u017cno\u015bci od u\u017cywanego systemu operacyjnego spos\u00f3b zmiany ustawie\u0144 DNS b\u0119dzie si\u0119 r\u00f3\u017cni\u0107.<\/p>\n<p>Je\u015bli u\u017cywasz systemu macOS, karta Sie\u0107 i opcje Zaawansowane dla dowolnego adaptera, kt\u00f3ry ma by\u0107 u\u017cywany do \u0142\u0105czenia si\u0119 z Internetem, zapewni\u0105 to, czego potrzebujesz do aktualizacji.<\/p>\n<p>Na tym ekranie kliknij kart\u0119 DNS, a nast\u0119pnie dodaj <code>127.0.0.1<\/code>na pocz\u0105tek listy.<\/p>\n<h3>Przyk\u0142adowy kod<\/h3>\n<p>Je\u015bli chodzi o zobaczenie powodu, dla kt\u00f3rego trzeba zrobi\u0107 co\u015b takiego, zawsze uwa\u017ca\u0142em, \u017ce <a href=\"https:\/\/gist.github.com\/tommcfarlin\/648da0d8f306d0f17984beeed80039c7#file-00-curl-example-php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">przyk\u0142adowy kod jest przydatny<\/a>. G\u0142\u00f3wnym powodem jest to, \u017ce daje nam to co\u015b do przetestowania przed wprowadzeniem powy\u017cszych zmian, a nast\u0119pnie po dokonaniu powy\u017cszych zmian.<\/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>Maj\u0105c to na uwadze, oto fragment kodu, kt\u00f3rego u\u017cywa\u0142em, kt\u00f3ry nie dzia\u0142a bez odpowiedniej konfiguracji DNS powy\u017cej:<\/p>\n<p>Ale po aktualizacji DNS dzia\u0142a to dobrze. I, \u017ceby by\u0142o jasne, nadal opowiadam si\u0119 za <code>[wp_safe_remote_get](https:\/\/developer.wordpress.org\/reference\/functions\/wp_safe_remote_get\/)<\/code>, <code>[wp_safe_remote_post](https:\/\/developer.wordpress.org\/reference\/functions\/wp_safe_remote_post\/)<\/code>ale ten charakter projekt\u00f3w b\u0119dzie r\u00f3wnie\u017c dyktowa\u0142, jakie mamy ograniczenia.<\/p>\n<p>Co wi\u0119cej, zapoznaj si\u0119 z tymi funkcjami, je\u015bli masz szans\u0119, aby zobaczy\u0107, co dzieje si\u0119 za kulisami.<\/p>\n<h2>To wszystko<\/h2>\n<p>Jak wspomnia\u0142em wcze\u015bniej, jest to \u0142atwy proces. Uwa\u017cam, \u017ce przydatne jest dzielenie si\u0119 rodzajem kodu, kt\u00f3ry mo\u017ce powodowa\u0107 problem, wi\u0119c je\u015bli widzisz co\u015b podobnego i uzyskujesz podobny wynik przy u\u017cyciu cURL, WordPress i Valet, wiesz, jak to rozwi\u0105za\u0107.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">\u0179r\u00f3d\u0142o nagrywania:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dlaczego aktualizacja ustawie\u0144 DNS podczas pracy z cURL, WordPress i Valet mo\u017ce rozwi\u0105za\u0107 problemy.<\/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":[721,897,784,752,805,836,845,866],"tags":[1169],"class_list":["post-231199","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-deweloper","category-kod","category-oprogramowanie-open-source","category-otwarte-zrodlo","category-php-7","category-przewodnik-dla-poczatkujacych","category-samouczki","category-wordpress-7","tag-affiai-pl"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts\/231199","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/comments?post=231199"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts\/231199\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/media\/236977"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/media?parent=231199"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/categories?post=231199"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/tags?post=231199"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}