diff --git a/src/App/Text/Explanations.purs b/src/App/Text/Explanations.purs index 166c613..29c78b3 100644 --- a/src/App/Text/Explanations.purs +++ b/src/App/Text/Explanations.purs @@ -2,6 +2,8 @@ module App.Text.Explanations where import Halogen.HTML as HH import Bulma as Bulma +expl' :: forall w i. String -> HH.HTML w i +expl' text = expl [Bulma.p text] expl :: forall w i. Array (HH.HTML w i) -> HH.HTML w i expl content = Bulma.div_content [ Bulma.explanation content ] expl_txt :: forall w i. String -> HH.HTML w i @@ -13,10 +15,9 @@ col arr = Bulma.column_ [ Bulma.box arr ] tokens :: forall w i. HH.HTML w i tokens = HH.div_ [ Bulma.h3 "What are tokens?" - , expl [ Bulma.p """ + , expl' """ Tokens are a simple way to update a resource record (A or AAAA) with your current IP address. """ - ] , HH.p_ [ HH.text "Let's take an example: you have an A record (IPv4) pointing to your web server at home, " , HH.text "but your ISP changes your IP address from time to time. " , HH.text "You can ask for a token (which looks like " @@ -64,25 +65,31 @@ basics = HH.div_ , Bulma.hr , Bulma.h3 "I have something to host." - , expl [ Bulma.p """ - Let's assume you have a web server, you host your website somewhere. - """ - ] + , expl' "Let's assume you have a web server, you host your website somewhere (A and AAAA records)." , Bulma.p """ - You want an A (IPv4) or AAAA (IPv6) record pointing to your server, named "www" for example. - If you have other servers, just add A or AAAA records. + You want an A (IPv4) or AAAA (IPv6) record pointing to your server, named "enigma" for example. """ + , expl' "You need other names pointing to your server (CNAME records)." , Bulma.p """ - In case you want other names than "www" to point to your server, you can use CNAME records (these are aliases). + You may not want to use the name of your server "enigma" directly. + Instead, you want the usual names for your services, such as "www" or "blog". + CNAME records are basically aliases, exactly to that end. + """ + , expl' "If you have other servers, just add more A or AAAA records." + , Bulma.p """ + Tip: choose relevant names for your servers then add CNAME records. + For example, you can have an A record named "server1" and a CNAME "www" pointing to it. + The service isn't pointing to an actual IP address directly, + but to the name of the physical server providing the service. + You don't need to remember the IP address of each of your servers. """ , Bulma.hr , Bulma.h3 "I want an email server." - , expl [ Bulma.p """ + , expl' """ Hosting a mail server is quite complex. - Let's see to the main parts regarding the DNS. + This page will focus on the main parts regarding the DNS. """ - ] , Bulma.notification_danger' """ The actual configuration of your mail server is complex and depends on your choice of software. This won't be covered here. @@ -96,19 +103,17 @@ basics = HH.div_ """ , Bulma.columns_ [ col - [ expl [ Bulma.p """ - Spam mitigation 1: tell what are the right mail servers for your domain with Sender Policy Framework (SPF). - """ - ] + [ expl' """ + Spam mitigation 1: tell what are the right mail servers for your domain with Sender Policy Framework (SPF). + """ , expl_txt """ You need a SPF record to tell other mail servers what are the acceptable mail servers for your domain. """ ] , col - [ expl [ Bulma.p """ - Spam mitigation 2: prove the mails come from your mail server with DomainKeys Identified Mail (DKIM). - """ - ] + [ expl' """ + Spam mitigation 2: prove the mails come from your mail server with DomainKeys Identified Mail (DKIM). + """ , expl_txt """ You'll have to configure your mail server to sign the emails you send. This involves creating a pair of keys (public and private). @@ -118,10 +123,9 @@ basics = HH.div_ """ ] , col - [ expl [ Bulma.p """ - Spam mitigation 3: Domain-based Message Authentication Reporting and Conformance (DMARC). - """ - ] + [ expl' """ + Spam mitigation 3: Domain-based Message Authentication Reporting and Conformance (DMARC). + """ , expl_txt """ Last but not least, DMARC. """