{"id":1293,"date":"2024-04-12T08:07:07","date_gmt":"2024-04-12T08:07:07","guid":{"rendered":"https:\/\/bogdanburuiana.com\/?p=1293"},"modified":"2024-07-04T08:07:45","modified_gmt":"2024-07-04T08:07:45","slug":"migrating-my-wordpress-blog-to-azure-iii","status":"publish","type":"post","link":"https:\/\/bogdanburuiana.com\/index.php\/2024\/04\/12\/migrating-my-wordpress-blog-to-azure-iii\/","title":{"rendered":"Migrating My WordPress Blog to Azure &#8211; III"},"content":{"rendered":"\n<p>First of all, I will need to configure a custom domain in Azure, considering that I have already purchased the domain bogdanburiana.com<\/p>\n\n\n\n<p>A custom domain in Azure is a domain name that you own and can use to make your Azure-hosted web services more accessible and branded. Instead of using the default Azure-provided subdomain (like <code>wpbogdanburuiana.azurewebsites.net<\/code>), I&#8217;ll configure my service to use a domain name I own (like <code>bogdanburiana.com<\/code>). This makes my blog look more professional and can improve user trust and SEO.<\/p>\n\n\n\n<p>Browse to <code>Web App > Settings > Custom domains > Add custom domain.<\/code><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"736\" src=\"\/wp-content\/uploads\/2024\/07\/Screenshot_17-1024x736.jpg\" alt=\"\" class=\"wp-image-1294\" srcset=\"\/wp-content\/uploads\/2024\/07\/Screenshot_17-1024x736.jpg 1024w, \/wp-content\/uploads\/2024\/07\/Screenshot_17-300x216.jpg 300w, \/wp-content\/uploads\/2024\/07\/Screenshot_17-768x552.jpg 768w, \/wp-content\/uploads\/2024\/07\/Screenshot_17.jpg 1432w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>DNS settings allow you to control how your domain name is translated into an IP address, which is how servers locate and serve your website.<\/p>\n\n\n\n<p> A DNS Zone in Azure is a container for DNS records, which define how a domain&#8217;s DNS queries are handled. It&#8217;s necessary for managing and configuring the DNS settings of a domain directly within Azure.<\/p>\n\n\n\n<p><strong>Create a DNS Zone<\/strong><\/p>\n\n\n\n<ul>\n<li><strong>Navigate to the Azure Portal:<\/strong> Go to the Azure portal (portal.azure.com).<\/li>\n\n\n\n<li><strong>Create a New Resource:<\/strong> Click on &#8220;Create a resource&#8221; and search for &#8220;DNS Zone&#8221;.<\/li>\n\n\n\n<li><strong>Fill in the Details:<\/strong> Provide the necessary details, such as the name of the DNS zone (e.g., <code>bogdanburiana.com<\/code>) and the resource group it should belong to.<\/li>\n\n\n\n<li><strong>Create the Zone:<\/strong> Click &#8220;Create&#8221; to set up the DNS zone.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"309\" height=\"417\" src=\"\/wp-content\/uploads\/2024\/07\/Screenshot_20.jpg\" alt=\"\" class=\"wp-image-1296\" srcset=\"\/wp-content\/uploads\/2024\/07\/Screenshot_20.jpg 309w, \/wp-content\/uploads\/2024\/07\/Screenshot_20-222x300.jpg 222w\" sizes=\"(max-width: 309px) 100vw, 309px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"880\" height=\"720\" src=\"\/wp-content\/uploads\/2024\/07\/Screenshot_21.jpg\" alt=\"\" class=\"wp-image-1297\" srcset=\"\/wp-content\/uploads\/2024\/07\/Screenshot_21.jpg 880w, \/wp-content\/uploads\/2024\/07\/Screenshot_21-300x245.jpg 300w, \/wp-content\/uploads\/2024\/07\/Screenshot_21-768x628.jpg 768w\" sizes=\"(max-width: 880px) 100vw, 880px\" \/><\/figure>\n\n\n\n<p>Then the next step will be to <strong>Add DNS Records<\/strong><\/p>\n\n\n\n<ul>\n<li><strong>Navigate to the DNS Zone:<\/strong> Once the zone is created, go to it in the Azure portal.<\/li>\n\n\n\n<li><strong>Add Records:<\/strong> Click on &#8220;+ Record set&#8221; to add DNS records. You can add A records, CNAME records, TXT records, MX records, etc., depending on your needs.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"425\" src=\"\/wp-content\/uploads\/2024\/07\/Screenshot_22-1024x425.jpg\" alt=\"\" class=\"wp-image-1298\" srcset=\"\/wp-content\/uploads\/2024\/07\/Screenshot_22-1024x425.jpg 1024w, \/wp-content\/uploads\/2024\/07\/Screenshot_22-300x125.jpg 300w, \/wp-content\/uploads\/2024\/07\/Screenshot_22-768x319.jpg 768w, \/wp-content\/uploads\/2024\/07\/Screenshot_22-1536x638.jpg 1536w, \/wp-content\/uploads\/2024\/07\/Screenshot_22.jpg 2034w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><strong>An A record points to the IP address of Azure-hosted WordPress site.<\/strong><\/p>\n\n\n\n<ul>\n<li><strong>Name: @<\/strong> (or leave it blank, depending on the registrar) field specifies which part of your domain this record applies to. Using &#8220;@&#8221; or leaving it blank usually applies this record to the root domain (e.g., <code>bogdanburiana.com<\/code>).<\/li>\n\n\n\n<li><strong>Type: A<\/strong> &#8211; an &#8220;A&#8221; (Address) record maps your domain name to an IPv4 address. This is necessary so that when someone types <code>bogdanburiana.com<\/code> into their browser, it resolves to the specific IP address where your site is hosted.<\/li>\n\n\n\n<li><strong>TXT (Text)<\/strong> record is used to store text information in the DNS. It is often used for domain verification, email validation (SPF, DKIM), and other purposes.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"462\" height=\"1024\" src=\"\/wp-content\/uploads\/2024\/07\/Screenshot_23-462x1024.jpg\" alt=\"\" class=\"wp-image-1299\" srcset=\"\/wp-content\/uploads\/2024\/07\/Screenshot_23-462x1024.jpg 462w, \/wp-content\/uploads\/2024\/07\/Screenshot_23-135x300.jpg 135w, \/wp-content\/uploads\/2024\/07\/Screenshot_23.jpg 592w\" sizes=\"(max-width: 462px) 100vw, 462px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"311\" data-id=\"1300\" src=\"\/wp-content\/uploads\/2024\/07\/Screenshot_24-1024x311.jpg\" alt=\"\" class=\"wp-image-1300\" srcset=\"\/wp-content\/uploads\/2024\/07\/Screenshot_24-1024x311.jpg 1024w, \/wp-content\/uploads\/2024\/07\/Screenshot_24-300x91.jpg 300w, \/wp-content\/uploads\/2024\/07\/Screenshot_24-768x233.jpg 768w, \/wp-content\/uploads\/2024\/07\/Screenshot_24-1536x467.jpg 1536w, \/wp-content\/uploads\/2024\/07\/Screenshot_24-2048x622.jpg 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/figure>\n\n\n\n<p>As soon as I add this domain, you will notice that it shows &#8216;No binding&#8217;. It means that the custom domain has been added to my Azure App Service, but it hasn&#8217;t been configured to properly bind to the specific SSL\/TLS certificate.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"478\" src=\"\/wp-content\/uploads\/2024\/07\/Screenshot_25-1024x478.jpg\" alt=\"\" class=\"wp-image-1301\" srcset=\"\/wp-content\/uploads\/2024\/07\/Screenshot_25-1024x478.jpg 1024w, \/wp-content\/uploads\/2024\/07\/Screenshot_25-300x140.jpg 300w, \/wp-content\/uploads\/2024\/07\/Screenshot_25-768x359.jpg 768w, \/wp-content\/uploads\/2024\/07\/Screenshot_25.jpg 1522w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><h3>Why SSL\/TLS Binding is Important<\/h3><ul><li><strong>Security:<\/strong> Ensures that data transferred between the server and clients is encrypted.<\/li><li><strong>Trust:<\/strong> Helps build trust with your users as modern browsers often flag unencrypted sites as insecure.<\/li><li><strong>SEO Benefits:<\/strong> Search engines favor secure websites, potentially improving your site&#8217;s ranking.<\/li><\/ul><\/p>\n\n\n\n<p>Azure provides free certificates through App Service Managed Certificates (limited to custom domains without subdomains like &#8216;www&#8217;. So I&#8217;ve created one. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"496\" height=\"1024\" src=\"\/wp-content\/uploads\/2024\/07\/Screenshot_26-496x1024.jpg\" alt=\"\" class=\"wp-image-1302\" srcset=\"\/wp-content\/uploads\/2024\/07\/Screenshot_26-496x1024.jpg 496w, \/wp-content\/uploads\/2024\/07\/Screenshot_26-145x300.jpg 145w, \/wp-content\/uploads\/2024\/07\/Screenshot_26.jpg 616w\" sizes=\"(max-width: 496px) 100vw, 496px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"521\" height=\"571\" src=\"\/wp-content\/uploads\/2024\/07\/Screenshot_27.jpg\" alt=\"\" class=\"wp-image-1303\" srcset=\"\/wp-content\/uploads\/2024\/07\/Screenshot_27.jpg 521w, \/wp-content\/uploads\/2024\/07\/Screenshot_27-274x300.jpg 274w\" sizes=\"(max-width: 521px) 100vw, 521px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"420\" src=\"\/wp-content\/uploads\/2024\/07\/Screenshot_28-1024x420.jpg\" alt=\"\" class=\"wp-image-1304\" srcset=\"\/wp-content\/uploads\/2024\/07\/Screenshot_28-1024x420.jpg 1024w, \/wp-content\/uploads\/2024\/07\/Screenshot_28-300x123.jpg 300w, \/wp-content\/uploads\/2024\/07\/Screenshot_28-768x315.jpg 768w, \/wp-content\/uploads\/2024\/07\/Screenshot_28.jpg 1409w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>And here you go, everything is in place now: Domain ownership is verified, and the SSL\/TLS certificate is added and bound<\/p>\n","protected":false},"excerpt":{"rendered":"<p>First of all, I will need to configure a custom domain in Azure, considering that I have already purchased the domain bogdanburiana.com A custom domain in Azure is a domain name that you own and can use to make your Azure-hosted web services more accessible and branded. Instead of using the default Azure-provided subdomain (like [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/bogdanburuiana.com\/index.php\/wp-json\/wp\/v2\/posts\/1293"}],"collection":[{"href":"https:\/\/bogdanburuiana.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bogdanburuiana.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bogdanburuiana.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bogdanburuiana.com\/index.php\/wp-json\/wp\/v2\/comments?post=1293"}],"version-history":[{"count":15,"href":"https:\/\/bogdanburuiana.com\/index.php\/wp-json\/wp\/v2\/posts\/1293\/revisions"}],"predecessor-version":[{"id":1319,"href":"https:\/\/bogdanburuiana.com\/index.php\/wp-json\/wp\/v2\/posts\/1293\/revisions\/1319"}],"wp:attachment":[{"href":"https:\/\/bogdanburuiana.com\/index.php\/wp-json\/wp\/v2\/media?parent=1293"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bogdanburuiana.com\/index.php\/wp-json\/wp\/v2\/categories?post=1293"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bogdanburuiana.com\/index.php\/wp-json\/wp\/v2\/tags?post=1293"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}