{"id":232884,"date":"2023-01-31T17:33:00","date_gmt":"2023-01-31T14:33:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=232884"},"modified":"2022-11-10T18:12:31","modified_gmt":"2022-11-10T15:12:31","slug":"jak-sprawic-by-strona-byla-w-pelni-bezpieczna-przez-polaczenia-ssl","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/pl\/jak-sprawic-by-strona-byla-w-pelni-bezpieczna-przez-polaczenia-ssl\/","title":{"rendered":"Jak sprawi\u0107, by strona by\u0142a w pe\u0142ni bezpieczna przez po\u0142\u0105czenia SSL?"},"content":{"rendered":"\n<p>W tym <a href=\"https:\/\/helloacm.com\/how-to-enable-ssl-connections-on-ubuntu-server\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">po\u015bcie<\/a> pokazuje konfiguracje wymagane do dzia\u0142ania SSL (na porcie 443) na serwerach Ubuntu.<\/p>\n<p>Jednak w przypadku niekt\u00f3rych stron (zw\u0142aszcza starych post\u00f3w\/stron) poka\u017ce \u201enie w pe\u0142ni bezpieczne&quot; informacje, je\u015bli korzystasz z przegl\u0105darki Chrome,<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-155574-61e564505ef12.jpg\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-155574-61e564505ef12.jpg\" alt=\"Jak sprawi\u0107, by strona by\u0142a w pe\u0142ni bezpieczna przez po\u0142\u0105czenia SSL?\" ><\/a><\/p>\n<p>ssl-nie tak-bezpieczny<\/p>\n<p>Przyczyn\u0105, jak m\u00f3wi, jest to, \u017ce strona u\u017cywa niekt\u00f3rych niezabezpieczonych po\u0142\u0105cze\u0144 z obrazami, plikami css lub javascript. Je\u015bli wejdziesz na <a href=\"https:\/\/www.whynopadlock.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/www.whynopadlock.com\/<\/a> (narz\u0119dzie do sprawdzania SSL online), mo\u017cesz zobaczy\u0107 szczeg\u00f3\u0142owe powody, dla kt\u00f3rych ta strona nie jest ca\u0142kowicie bezpieczna.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-155574-61e5645178ddb.jpg\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-155574-61e5645178ddb.jpg\" alt=\"Jak sprawi\u0107, by strona by\u0142a w pe\u0142ni bezpieczna przez po\u0142\u0105czenia SSL?\" ><\/a><\/p>\n<p>Narz\u0119dzie do sprawdzania SSL<\/p>\n<p>Alternatywnie mo\u017cesz przej\u015b\u0107 do konsoli przegl\u0105darki Chrome, a zobaczysz szczeg\u00f3\u0142owe ostrze\u017cenia.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-155574-61e564530025e.jpg\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-155574-61e564530025e.jpg\" alt=\"Jak sprawi\u0107, by strona by\u0142a w pe\u0142ni bezpieczna przez po\u0142\u0105czenia SSL?\" ><\/a><\/p>\n<p>Szczeg\u00f3\u0142y\/po\u0142\u0105czenia SSL w konsoli przegl\u0105darki Google Chrome<\/p>\n<p>Je\u015bli nie zrobimy tych zasob\u00f3w image\/js\/css SSL, to kto\u015b m\u00f3g\u0142by\/m\u00f3g\u0142by zmieni\u0107 wygl\u0105d strony, czyni\u0105c korzystanie z SSL bez sensu.<\/p>\n<p>Ponadto, je\u015bli u\u017cywasz tagu HTML <strong>iframe<\/strong> do do\u0142\u0105czania stron, musz\u0105 one r\u00f3wnie\u017c korzysta\u0107 z protoko\u0142u HTTPS, w przeciwnym razie zostanie to zablokowane przez wi\u0119kszo\u015b\u0107 przegl\u0105darek ze wzgl\u0119du na potencjalne zagro\u017cenia bezpiecze\u0144stwa.<\/p>\n<p>Ponadto, je\u015bli masz formularze, kt\u00f3re s\u0105 niezabezpieczonymi adresami URL (pole <strong>akcji<\/strong> ), nadal b\u0119dziesz mie\u0107 ostrze\u017cenia. Na przyk\u0142ad powiniene\u015b u\u017cy\u0107 wersji SSL wyszukiwarki Google zamiast wersji innej ni\u017c SSL.<\/p>\n<h2>Je\u015bli zasoby s\u0105 hostowane w innej domenie<\/h2>\n<p>Nie ma nic do zrobienia, je\u015bli zasoby s\u0105 hostowane w innych domenach. W takim przypadku mo\u017cesz u\u017cy\u0107 wersji HTTPS, je\u015bli zapewniaj\u0105, ale nie zawsze jest to mo\u017cliwe. Du\u017ce firmy maj\u0105 zar\u00f3wno wersje HTTP, jak i HTTPS, np. google. Je\u015bli nie, mo\u017cesz pobra\u0107 kopi\u0119 i przes\u0142a\u0107 na sw\u00f3j w\u0142asny FTP, a tym samym zmieni\u0107 adres URL, kt\u00f3ry jest bezpieczny.<\/p>\n<h2>SQL do zmiany adresu URL dla post\u00f3w wordpress<\/h2>\n<p>Je\u015bli u\u017cywasz wordpress, mo\u017cesz u\u017cy\u0107 nast\u0119puj\u0105cego adresu URL, aby zmieni\u0107 adresy URL w po\u015bcie.<\/p>\n<pre><code>UPDATE wp_posts SET post_content = REPLACE (post_content, '<\/code><\/pre>\n<p>Nast\u0119puj\u0105ce zmiany r\u00f3wnie\u017c GUID dla ka\u017cdego postu.<\/p>\n<pre><code>UPDATE wp_posts SET guid = REPLACE (guid,  '<\/code><\/pre>\n<p>I powiniene\u015b zalogowa\u0107 si\u0119 do panelu sterowania wordpress, aby zaktualizowa\u0107 adres URL witryny.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-155574-61e564544c398.jpg\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-155574-61e564544c398.jpg\" alt=\"Jak sprawi\u0107, by strona by\u0142a w pe\u0142ni bezpieczna przez po\u0142\u0105czenia SSL?\" ><\/a><\/p>\n<p>ustawienia panelu sterowania ssl wordpress<\/p>\n<p>Alternatywnie mo\u017cesz to zrobi\u0107 przez SQL:<\/p>\n<pre><code>UPDATE wp_options SET option_value = replace(option_value, '<\/code><\/pre>\n<h2>Je\u015bli hostujesz kilka witryn\/domen na tym samym adresie IP (VPS lub serwer dedykowany)<\/h2>\n<p>Jak wida\u0107 na powy\u017cszych zrzutach ekranu, je\u015bli hostujesz kilka witryn\/domen na tym samym adresie IP i u\u017cywasz tych obraz\u00f3w w swoich postach, mo\u017cesz r\u00f3wnie\u017c zabezpieczy\u0107 te domeny (zakup nowych certyfikat\u00f3w SSL) lub zmiana adres\u00f3w URL.<\/p>\n<p>W przypadku drugiej metody mo\u017cesz pobra\u0107 obrazy\/css\/js i ponownie przes\u0142a\u0107 je do u\u017cywanej domeny z obs\u0142ug\u0105 SSL lub mo\u017cesz zmapowa\u0107 adresy URL zasob\u00f3w bez SSL na domeny z obs\u0142ug\u0105 SSL.<\/p>\n<p>Na przyk\u0142ad mo\u017cesz zalogowa\u0107 si\u0119 do swojego VPS lub serwera dedykowanego i utworzy\u0107 dowi\u0105zanie symboliczne (podobne do skr\u00f3t\u00f3w w systemie Windows).<\/p>\n<pre><code>ln -s \u00a0\/var\/non-ssl-domains\/images \/var\/ssl-domain\/images<\/code><\/pre>\n<p>Nast\u0119pnie mo\u017cesz zamieni\u0107 <strong><a href=\"http:\/\/non-ssl-domains\/images\" class=\"external external_icon\" rel=\"nofollow\" target=\"_blank\">http:\/\/non-ssl-domains\/images<\/a><\/strong> na <strong><a href=\"https:\/\/ssl-domain\/images\" class=\"external external_icon\" rel=\"nofollow\" target=\"_blank\">https:\/\/ssl-domain\/images<\/a><\/strong>, u\u017cywaj\u0105c powy\u017cszego kodu SQL.<\/p>\n<p>Czasami serwer Apache nie pod\u0105\u017ca za dowi\u0105zaniami symbolicznymi i w tym przypadku mo\u017cna oczywi\u015bcie utworzy\u0107 dowi\u0105zania twarde (bez opcji -s)<\/p>\n<pre><code>ln \u00a0\/var\/non-ssl-domains\/images \/var\/ssl-domain\/images<\/code><\/pre>\n<h2>U\u017cywanie PHP do przekierowywania niezabezpieczonych adres\u00f3w URL w celu zabezpieczenia SSL<\/h2>\n<p>Innym rozwi\u0105zaniem jest utworzenie pliku <a href=\"https:\/\/helloacm.com\/php7-shortens-the-google-page-crawling-time\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">PHP<\/a> na podstawie parametr\u00f3w <strong>$_GET<\/strong> adres\u00f3w URL i odczytanie plik\u00f3w zasob\u00f3w z innej domeny, poniewa\u017c wszystkie s\u0105 hostowane na tej samej maszynie (VPS lub serwer dedykowany).<\/p>\n<pre><code>\u00a0 function hell() {\n\u00a0 \u00a0 header($_SERVER['SERVER_PROTOCOL']. ' 404 Not Found'); \n\u00a0 \u00a0 die();\n\u00a0 }\n\u00a0 $r = '';\n\u00a0 if (isset($_GET['r'])) {\n\u00a0 \u00a0 $r = trim($_GET['r']);\n\u00a0 }\n\u00a0 if (!strlen($r)) {\n\u00a0 \u00a0 hell();\n\u00a0 }\n\u00a0 $url = '\/var\/www\/codingforspeed.com\/images\/'.$r;\n\u00a0 if (!is_file($url)) {\n\u00a0 \u00a0 hell(); \u00a0 \n\u00a0 }\n\u00a0 $ext = strtoupper(pathinfo($url, PATHINFO_EXTENSION));\n\u00a0 $type = exif_imagetype($url);\n\u00a0 if (($ext == 'JPG') &amp;&amp; ($type == IMAGETYPE_JPEG)) {\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 header('Content-Disposition: inline');\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 header(\"Content-Type: image\/jpeg\");\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 header(\"Content-Length: \". filesize($url));\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 header(\"Content-Transfer-Encoding: binaryn\");\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 $im = imagecreatefromjpeg($url);\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 imagejpeg($im);\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 imagedestroy($im);\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 die();\n\u00a0 }\n\u00a0 else if (($ext == 'GIF') &amp;&amp; ($type == IMAGETYPE_GIF)) {\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 header('Content-Disposition: inline');\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 header(\"Content-Type: image\/gif\");\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 header(\"Content-Length: \". filesize($url));\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 header(\"Content-Transfer-Encoding: binaryn\");\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 readfile($url); \u00a0 \n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 die(); \n\u00a0 } \n\u00a0 else if (($ext == 'PNG') &amp;&amp; ($type == IMAGETYPE_PNG)) {\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 header('Content-Disposition: inline');\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 header(\"Content-Type: image\/png\");\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 header(\"Content-Length: \". filesize($url));\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 header(\"Content-Transfer-Encoding: binaryn\");\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 $im = imagecreatefrompng($url);\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 imagepng($im);\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 imagedestroy($im); \n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 die(); \n\u00a0 }\n\u00a0 else if (($ext == 'BMP') &amp;&amp; ($type == IMAGETYPE_BMP)) {\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 header('Content-Disposition: inline');\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 header(\"Content-Type: image\/bmp\");\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 header(\"Content-Length: \". filesize($url));\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 header(\"Content-Transfer-Encoding: binaryn\");\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 $im = imagecreatefrombmp($url);\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 imagebmp($im);\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 imagedestroy($im); \u00a0\n\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 die();\n\u00a0 }\n\u00a0 else {\n\u00a0 \u00a0 hell();\n\u00a0 }<\/code><\/pre>\n<p>Zapisz powy\u017cszy kod PHP pod swoj\u0105 domen\u0105 SSL, na przyk\u0142ad <strong><a href=\"https:\/\/helloacm.com\/ssl\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/helloacm.com\/ssl<\/a><\/strong> i ustaw go jako <strong>index.php<\/strong>.<\/p>\n<p>Je\u015bli na przyk\u0142ad poprzedni niezabezpieczony adres URL to <strong><a href=\"https:\/\/codingforspeed.com\/images\/logo.png\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/codingforspeed.com\/images\/logo.png<\/a><\/strong>, to nowy bezpieczny adres URL SSL to <strong><a href=\"https:\/\/helloacm.com\/ssl\/?r=logo.png\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">https:\/\/helloacm.com\/ssl\/?rlogo.png<\/a><\/strong><\/p>\n<p>I odpowiednio zamie\u0144 adresy URL w wordpressie, u\u017cywaj\u0105c powy\u017cszego SQL. Te metody s\u0105 troch\u0119 tymczasowe, poniewa\u017c je\u015bli masz bud\u017cety, lepiej ustawi\u0107 wszystkie domeny jako SSL.<\/p>\n<p>Witamy w \u015bwiecie SSL! W nagrod\u0119 niekt\u00f3re wyszukiwarki (algorytmy Google) wol\u0105 strony SSL od niezabezpieczonego HTTP. Twoje strony SSL maj\u0105 tendencj\u0119 do lepszego SEO.<\/p>\n<h2>URL z podw\u00f3jnymi uko\u015bnikami w prz\u00f3d<\/h2>\n<p>Czasami mo\u017cesz zobaczy\u0107, \u017ce &#8217; <strong>\/\/ <a href=\"https:\/\/helloacm.com\/images\/logo.png\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">helloacm.com\/images\/logo.png<\/a><\/strong> &#8217;. Podw\u00f3jne uko\u015bniki automatycznie wykryj\u0105 protok\u00f3\u0142 bie\u017c\u0105cej strony. Je\u015bli jest to HTTP i u\u017cyje protoko\u0142u HTTP lub je\u015bli jest to HTTPS, dost\u0119p do obrazu b\u0119dzie mo\u017cliwy przez HTTPS. Mo\u017cesz rozwa\u017cy\u0107 zast\u0105pienie wszystkich adres\u00f3w URL podw\u00f3jnymi uko\u015bnikami, aby uzyska\u0107 lepsz\u0105 kompatybilno\u015b\u0107, tj. bez wzgl\u0119du na u\u017cywany protok\u00f3\u0142, zawsze jeste\u015b na w\u0142a\u015bciwym. Proste!<\/p>\n<h2>htaccess URL przepisa\u0107 mod<\/h2>\n<p>Po pe\u0142nym przetestowaniu adres\u00f3w URL SSL nale\u017cy przenie\u015b\u0107 poprzednie niezabezpieczone adresy URL do protoko\u0142u SSL. Mo\u017cesz to zrobi\u0107 w .htaccess (przepisanie mod\u00f3w serwera <a href=\"https:\/\/helloacm.com\/restart-apache-web-server-on-errors\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">apache ).<\/a> Po prostu umie\u015b\u0107 nast\u0119puj\u0105ce dwa wiersze w g\u0142\u00f3wnym folderze swojej witryny, np. WordPress blog.<\/p>\n<pre><code>RewriteEngine On \nRewriteCond %{SERVER_PORT} 80 \nRewriteRule ^(.*)$ &lt;a class=\"vglnk\" target=\"_blank\" href=\"https:\/\/helloacm.com\/$1\" rel=\"nofollow\"&gt;&lt;span&gt;https&lt;\/span&gt;&lt;span&gt;:\/\/&lt;\/span&gt;&lt;span&gt;helloacm&lt;\/span&gt;&lt;span&gt;.&lt;\/span&gt;&lt;span&gt;com&lt;\/span&gt;&lt;span&gt;\/$&lt;\/span&gt;&lt;span&gt;1&lt;\/span&gt;&lt;\/a&gt; [R=301,L] <\/code><\/pre>\n<p>Przekierowanie 301 informuje wyszukiwark\u0119, \u017ce wynik SEO bie\u017c\u0105cego niezabezpieczonego adresu URL powinien zosta\u0107 przeniesiony do adresu SSL. Teraz zacznij propagowa\u0107 sw\u00f3j SSL zamiast niezabezpieczonego HTTP.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">\u0179r\u00f3d\u0142o nagrywania:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/helloacm.com\" class=\"external external_icon\">helloacm.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Jak sprawi\u0107, by strona by\u0142a w pe\u0142ni bezpieczna przez po\u0142\u0105czenia SSL?<\/p>\n","protected":false},"author":1,"featured_media":224713,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[1032,836,845,866,815],"tags":[1169],"class_list":["post-232884","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-bezpieczenstwo","category-przewodnik-dla-poczatkujacych","category-samouczki","category-wordpress-7","category-wtyczki","tag-affiai-pl"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts\/232884","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=232884"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/posts\/232884\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/media\/224713"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/media?parent=232884"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/categories?post=232884"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/pl\/wp-json\/wp\/v2\/tags?post=232884"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}