diff options
Diffstat (limited to 'tutorials/www/how-to-make-this-site.html')
| -rw-r--r-- | tutorials/www/how-to-make-this-site.html | 90 | 
1 files changed, 39 insertions, 51 deletions
| diff --git a/tutorials/www/how-to-make-this-site.html b/tutorials/www/how-to-make-this-site.html index 2fcc26f..33d8943 100644 --- a/tutorials/www/how-to-make-this-site.html +++ b/tutorials/www/how-to-make-this-site.html @@ -1,11 +1,11 @@  <!DOCTYPE html> -<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang=""> +<html lang="" xml:lang="" xmlns="http://www.w3.org/1999/xhtml">  <head> -  <meta charset="utf-8" /> -  <meta name="generator" content="pandoc" /> -  <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" /> -  <title>how-to-make-this-site</title> -  <style> +<meta charset="utf-8"/> +<meta content="pandoc" name="generator"/> +<meta content="width=device-width, initial-scale=1.0, user-scalable=yes" name="viewport"/> +<title>how-to-make-this-site</title> +<style>      html {        line-height: 1.5;        font-family: Georgia, serif; @@ -159,42 +159,41 @@  <nav id="TOC" role="doc-toc">  <h2 id="toc-title">Contents</h2>  <ul> -<li><a href="#background">Background</a></li> -<li><a href="#what-is-a-web-server-and-how-do-i-run-one">What is a web +<li><a href="#background" target="_self">Background</a></li> +<li><a href="#what-is-a-web-server-and-how-do-i-run-one" target="_self">What is a web  server and how do I run one?</a>  <ul> -<li><a href="#getting-from-localhost-to-the-internet">Getting from +<li><a href="#getting-from-localhost-to-the-internet" target="_self">Getting from  localhost to the internet</a></li>  </ul></li> -<li><a -href="#how-can-i-make-this-server-available-on-the-internet-cheaply-and-independently">How +<li><a href="#how-can-i-make-this-server-available-on-the-internet-cheaply-and-independently" target="_self">How  can I make this server available on the Internet <em>cheaply</em> and  <em>independently</em></a>  <ul> -<li><a href="#can-i-run-a-web-server-at-home">Can I run a web server at +<li><a href="#can-i-run-a-web-server-at-home" target="_self">Can I run a web server at  home</a></li> -<li><a href="#so-what-should-i-do">So what should I do</a></li> +<li><a href="#so-what-should-i-do" target="_self">So what should I do</a></li>  </ul></li> -<li><a href="#whats-a-domain-name">What's a "Domain Name"</a></li> -<li><a href="#setup-https-and-tls-for-some-sense-of-security">Setup +<li><a href="#whats-a-domain-name" target="_self">What's a "Domain Name"</a></li> +<li><a href="#setup-https-and-tls-for-some-sense-of-security" target="_self">Setup  HTTPS and TLS, for some sense of security</a></li> -<li><a href="#perspective">Perspective</a></li> -<li><a href="#references">References</a> +<li><a href="#perspective" target="_self">Perspective</a></li> +<li><a href="#references" target="_self">References</a>  <ul> -<li><a href="#terms-of-service-for-certain-isps">Terms of service for +<li><a href="#terms-of-service-for-certain-isps" target="_self">Terms of service for  certain ISPs</a>  <ul> -<li><a href="#verizon">Verizon</a></li> -<li><a href="#optimum">Optimum</a></li> -<li><a href="#spectrum">Spectrum</a></li> -<li><a href="#att">AT&T</a></li> -<li><a href="#cox-communications">Cox Communications</a></li> +<li><a href="#verizon" target="_self">Verizon</a></li> +<li><a href="#optimum" target="_self">Optimum</a></li> +<li><a href="#spectrum" target="_self">Spectrum</a></li> +<li><a href="#att" target="_self">AT&T</a></li> +<li><a href="#cox-communications" target="_self">Cox Communications</a></li>  </ul></li>  </ul></li>  </ul>  </nav>  <h2 id="background">Background</h2> -<p><em>TL;DR get to </em><a href="#thepoint">the point</a></p> +<p><em>TL;DR get to </em><a href="#thepoint" target="_self">the point</a></p>  <p>I think it was roughly the end of high school when I first had the  idea I wanted to make <em>some</em> kind of website. This would be  around 2010 and I did what I thought would be a good idea and bought a @@ -222,8 +221,7 @@ you want to take the time to deploy it yourself). But they also give out  free .wordpress domains and some storage space with a snazzy dashboard  to manage it all.</p>  <p>I had fun with that one, I don't update it anymore, but it's still up -at <a -href="https://postquantumpoetry.wordpress.com">postquantumpoetry.wordpress.com</a>. +at <a href="https://postquantumpoetry.wordpress.com">postquantumpoetry.wordpress.com</a>.  WordPress got closer to what I wanted, but it still wasn't  <em>really</em> my site; it was WordPress's site unless I wanted to pay  the hosting and domain fee. It's pretty modest, but I wasn't sold on @@ -261,15 +259,12 @@ and how do I run one?</h2>  <p><em>TL;DR a web server is just a program that lets other computers on  a network view files in a chosen folder. All you need to do is download  a web server: apache and nginx are popular ones, but you can easily -program your own with web frameworks like <a -href="https://flask.palletsprojects.com/en/2.0.x/">Flask</a> or <a -href="https://facil.io/">Facil</a></em></p> +program your own with web frameworks like <a href="https://flask.palletsprojects.com/en/2.0.x/">Flask</a> or <a href="https://facil.io/">Facil</a></em></p>  <p>You can run a web server for free right now. These instructions will  be for Linux just for consistency since I'm as used to setting this up  on a Windows server. If you've never used Linux, don't be scared! It's  very easy to setup and manage in Windows now with Windows Subsystem for -Linux. If you're on Windows, follow their guide <a -href="https://docs.microsoft.com/en-us/windows/wsl/install">here</a>. It +Linux. If you're on Windows, follow their guide <a href="https://docs.microsoft.com/en-us/windows/wsl/install">here</a>. It  should be pretty straightforward, but if you have any issues: 1) Make  sure you check your Windows version as noted in the "Prerequisites," 2)  Try a different distribution, like Debian with @@ -357,19 +352,16 @@ value.</p>  <p>Now get your <em>public</em> ip address at this site https://who.is/  and share it with your friends. Watch in horror as they access all the  files in the directory you launched the server!</p> -<h2 -id="how-can-i-make-this-server-available-on-the-internet-cheaply-and-independently">How +<h2 id="how-can-i-make-this-server-available-on-the-internet-cheaply-and-independently">How  can I make this server available on the Internet <em>cheaply</em> and  <em>independently</em></h2>  <p><i> TL;DR Expense scales with independence. It's possible to become  your own service provider, get IP addresses from ICANN, your own  hardware to host it, to host your cat pics; but it's also a lot of time, -work and money to do all that (<a -href="https://hackaday.com/2018/09/20/one-mans-journey-to-become-his-own-isp/">this -guy</a> did it apparently, and so did <a -href="https://en.wikipedia.org/wiki/Kiwi_Farms">Null</a>)</p> +work and money to do all that (<a href="https://hackaday.com/2018/09/20/one-mans-journey-to-become-his-own-isp/">this +guy</a> did it apparently, and so did <a href="https://en.wikipedia.org/wiki/Kiwi_Farms">Null</a>)</i></p>  <p>Most likely you'll want to rent someone else's server, usually a VPS. -</i></p> +</p>  <p>Once you understand the basic installation above, you can now  populate your site with content just by adding HTML files to your web  directory. You can use an HTML editor to write these, or you can @@ -388,19 +380,18 @@ HTML files in vim or notepad and adding some CSS goes a long way. I  wrote my own view of the topic in the context of how I wrote this site  <a href="/tutorials/www/quick-intro-to-html-css.html">here</a>. And you  can find a number of great guides on how to write files, copy them and -manage them in the <a href="#references">references</a>.</p> +manage them in the <a href="#references" target="_self">references</a>.</p>  <p>One easy way to create HTML templates with these servers is through  the use of "Server Side Includes," which essentially let you past one  html document into another. This varies by server, for example, nginx -has their own options and syntax detailed <a -href="https://nginx.org/en/docs/http/ngx_http_ssi_module.html">here</a>.</p> +has their own options and syntax detailed <a href="https://nginx.org/en/docs/http/ngx_http_ssi_module.html">here</a>.</p>  <ul>  <li><a href="https://neocities.org/"><strong>Neocities</strong></a></li>  </ul>  <p>Neocities is based on the old Geocities from the mid 90s which allows  simple static hosting and features and amazing array of creative  projects. Everything is managed through the website, and you can pay to -set your own custom <a href="#whats-a-domain-name">domain name</a>.</p> +set your own custom <a href="#whats-a-domain-name" target="_self">domain name</a>.</p>  <ul>  <li><strong>Wordpress</strong> (but this time, you set it up)</li>  </ul> @@ -423,8 +414,7 @@ online?</p>  home</h3>  <p>Technically yes, but practically probably not. At least not at a lot  of extra cost to you. If you do want to host a small thing at home, like -some text or some cat pics, a <a -href="/tutorials/tor/how-to-host-a-tor-hidden-service.html">tor hidden +some text or some cat pics, a <a href="/tutorials/tor/how-to-host-a-tor-hidden-service.html">tor hidden  service</a> is a great option.</p>  <p>I spent a lot of time searching on this (you can find a full list of  references at the bottom), and I've even tested a little bit by hosting @@ -460,7 +450,7 @@ like:</p>  <li>Opening up your ports to the outside world.</li>  </ul>  <p>And in a nutshell that's it. There's fancy stuff of course, like -you'll want a <a href="#whats-a-domain-name">domain name</a> probably +you'll want a <a href="#whats-a-domain-name" target="_self">domain name</a> probably  and I'll talk about that too, but at this point, your stuff is on the  Internet! Just tell your friends to paste in your public ip address  (your VPS provider will tell you this) and there's your stuff!</p> @@ -525,15 +515,12 @@ the site is somehow dangerous, even if it doesn't collect any  information about the user. Because of that, most you will want to go  the extra mile to make your visitors feel warm and fuzzy inside and  implement HTTPS.</p> -<p>Fortunately, this is now much easier than is used to be thanks to <a -href="https://letsencrypt.org/">LetsEncrypt</a>. LetsEncrypt generously +<p>Fortunately, this is now much easier than is used to be thanks to <a href="https://letsencrypt.org/">LetsEncrypt</a>. LetsEncrypt generously  serves as a free certificate authority, which allows you to generate  signed certificates that are recognized by every web browser in the -world. The tool they recommend, <a -href="https://certbot.eff.org/">certbot</a> is painless to install. I've +world. The tool they recommend, <a href="https://certbot.eff.org/">certbot</a> is painless to install. I've  rarely had to do much more than "certbot certonly" and follow the -prompts to get a certificate. Once you've obtained one, add it to <a -href="https://httpd.apache.org/docs/2.4/ssl/ssl_howto.html">apache</a> +prompts to get a certificate. Once you've obtained one, add it to <a href="https://httpd.apache.org/docs/2.4/ssl/ssl_howto.html">apache</a>  or <a href="https://www.nginx.com/blog/nginx-ssl/#Examples">nginx</a>,  switch the port to 443 instead of 80 and bam, you've got HTTPS!</p>  <h2 id="perspective">Perspective</h2> @@ -605,3 +592,4 @@ others.</p>  </ul>  </body>  </html> + | 
