186 lines
12 KiB
Plaintext
186 lines
12 KiB
Plaintext
|
|
Episode: 1394
|
||
|
|
Title: HPR1394: Setting Up Your Own Blog
|
||
|
|
Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr1394/hpr1394.mp3
|
||
|
|
Transcribed: 2025-10-18 00:44:17
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
...
|
||
|
|
Hi, my name is Keith Murray, I'm a developer and software architect from Vancouver, back
|
||
|
|
for another round of hacker public radio.
|
||
|
|
I was trying to decide what to choose for a topic this time around and turn to the requested
|
||
|
|
topics list on the HPR website.
|
||
|
|
There are a lot of great topic ideas on the list, but not many that I know a whole lot
|
||
|
|
about, so I'm here today to talk to you about setting up your own blog.
|
||
|
|
I know that the vast majority of the HPR audiences are probably familiar with the concept
|
||
|
|
of a blog, but just in case you need a refresher, here's a short definition.
|
||
|
|
A blog, short for web blog, is a website typically consisting of chronologically listed posts
|
||
|
|
or articles, often on a particular topic or theme, and that's really all it is, a collection
|
||
|
|
of similar, smaller works gathered together in a consistent format.
|
||
|
|
I've linked to the Wikipedia article in the show notes for a more precise definition
|
||
|
|
and a little bit of history.
|
||
|
|
I'm going to make the assumption that the HPR audience would be more interested in the
|
||
|
|
guts of actually setting up and configuring a blog, rather than an explanation of how
|
||
|
|
to sign up for something like one of the commercial blog hosting services like WordPress.com
|
||
|
|
or Squarespace.com.
|
||
|
|
Before diving into the depths of setting up our own blogging platforms, you will need
|
||
|
|
to figure out where the blog will live, or more precisely where it will be hosted.
|
||
|
|
Hosting at home when your own server gives you the most control and flexibility of your
|
||
|
|
server, but may not provide you with the experience you desire.
|
||
|
|
Websites are hosted by default on a couple of specific ports, 80 and 443.
|
||
|
|
Many ISPs will block these ports to outside traffic.
|
||
|
|
This isn't a problem if you only want the blog visible on your home network.
|
||
|
|
If however, you're planning to share your thoughts and insights with the world at large,
|
||
|
|
you may need to find someone else to do the hosting for you.
|
||
|
|
Web hosting services, and again, I'm not talking about blog hosting services, that's
|
||
|
|
another show.
|
||
|
|
Our company is that provide you with space to host your website.
|
||
|
|
While there are almost as many hosting options as there are stars in the sky, well, okay,
|
||
|
|
maybe not quite that many, but you know what I mean, I'm going to focus on three simple
|
||
|
|
server setup scenarios.
|
||
|
|
The first type of access is FTP only.
|
||
|
|
This is the kind of service that most internet service providers will give you as a perk
|
||
|
|
of your service with them.
|
||
|
|
They give you some server space and an FTP password, and that's about it.
|
||
|
|
The best part is usually the price, free, with your internet service, of course.
|
||
|
|
There are a couple of downsides to this though.
|
||
|
|
The first one is lack of features.
|
||
|
|
The other is sort of binds you to your ISP.
|
||
|
|
If your website is www.yourisp.com slash your username, that's not only a really ugly URL,
|
||
|
|
but you would probably have to move the website if you decided to change providers down the
|
||
|
|
road.
|
||
|
|
All in all, not a particularly good deal, despite the price.
|
||
|
|
Shared hosting providers typically offer a more complete hosting package, often including
|
||
|
|
a year's domain registration with a hosting plan.
|
||
|
|
Other services may include web-based administration tools, large disk space allocations, email
|
||
|
|
hosting, and more importantly, shell access.
|
||
|
|
For me, the latter has been a requirement of every hosting provider I've signed up for.
|
||
|
|
Having the ability to connect to the back end of your website over an SSH tunnel offers
|
||
|
|
you tons of flexibility and the ability to better understand what's actually going
|
||
|
|
on under the hood of your website.
|
||
|
|
The shell access is often restricted, however, and in the vast majority of shared hosting
|
||
|
|
scenarios, you won't have rude access to the server and are thus restricted from installing
|
||
|
|
software or making fundamental alterations to the underlying system.
|
||
|
|
For those wanting to retain even more control over their environment, the best option may
|
||
|
|
be a virtual private server, or VPS.
|
||
|
|
A VPS is essentially a virtual machine hosted in the provider's data center that you
|
||
|
|
have all to yourself.
|
||
|
|
You get rude access to the machine, and you can pretty well do anything you want with
|
||
|
|
it, within the jurisdiction of legal boundaries, of course.
|
||
|
|
This means that you can install software, change settings, and generally raise a ruckus
|
||
|
|
on your shiny new server.
|
||
|
|
It also means that, for the most part, you'll need to get yourself out of any server-side
|
||
|
|
quandaries.
|
||
|
|
It provides you with a very high degree of freedom, and in my estimation, is one of the best ways
|
||
|
|
to learn how to administer a server and brush up on your ninja-like command line skills.
|
||
|
|
So, now that we've covered off some hosting options and figured out where you want to
|
||
|
|
put your blog, the next choice is what you want to use to actually serve and manage your
|
||
|
|
blog.
|
||
|
|
I'm going to touch on three options again, each one tailored a bit for each of the server
|
||
|
|
options above, but as I said, there's tons of ways to actually put these scenarios together,
|
||
|
|
so you'll have to poke around and figure out what works best for you.
|
||
|
|
The most old school way to set up your blog would be to have manually edited HTML files
|
||
|
|
and push them up to your server over FTP.
|
||
|
|
This method will work with all of the server configurations I spoke about earlier.
|
||
|
|
All you need for this is the basic FTP access.
|
||
|
|
All of the tools that you need to edit your site would actually be on your computer,
|
||
|
|
and then you simply upload the finished files to the server.
|
||
|
|
This is fine for small, simple websites, but can quickly get unwieldy with larger projects.
|
||
|
|
That of course is the price that you pay for simplicity.
|
||
|
|
There are tools to help you manage these types of sites, however, a few of these were
|
||
|
|
discussed on a summer 2013 episode of Going Linux that I'll link to from the show notes.
|
||
|
|
The review covers several tools which had been evaluated for helping to maintain the
|
||
|
|
show's website, which was built using the static page plus FTP method.
|
||
|
|
By far, the most common method these days is to maintain a blog using some sort of blogging
|
||
|
|
software.
|
||
|
|
As I mentioned in the opening, there are a number of services which offer to host your
|
||
|
|
blog for you.
|
||
|
|
Many of these also have a corresponding software package that you could install on your
|
||
|
|
own shared hosting server or VPS, and allow that to take on the hosting function for you.
|
||
|
|
There are a number of options available, and several of these are open source to a greater
|
||
|
|
or lesser degree.
|
||
|
|
The most common choice by far these days is WordPress.
|
||
|
|
Originally conceived as a fork of an open source blogging tool called B2 or Cafe Log,
|
||
|
|
WordPress has evolved into a leader in the field with large numbers of people using
|
||
|
|
the software to host their blogs.
|
||
|
|
To get started with WordPress, you need to have a server with some sort of web server
|
||
|
|
software, most commonly Apache or EngineX, a database, most commonly MySQL, enough disk
|
||
|
|
space, and of course permission to host the blog.
|
||
|
|
If you're setting up your own server, distributions like Ubuntu will let you choose to install
|
||
|
|
a lamp stack, either at install time, or afterward by installing the components using
|
||
|
|
the apt package manager.
|
||
|
|
Lamp in this case refers to the combination of Linux, Apache, MySQL, and PHP, which form
|
||
|
|
the underlying components required to allow WordPress, and many other software packages
|
||
|
|
to run.
|
||
|
|
Other distributions offer similar options.
|
||
|
|
Since there are dozens of tutorials on the web about setting up a typical lamp stack,
|
||
|
|
I won't get into that on this episode, but once you have a working server, you can
|
||
|
|
download the latest version of WordPress from the WordPress.org website, uncompress it,
|
||
|
|
load it into a browser, and follow the setup instructions.
|
||
|
|
If WordPress is a little too common for you, there are lots of alternatives, among them,
|
||
|
|
long time WordPress rivals, Jumla, and Drupal.
|
||
|
|
From a technical and system perspective, the experience is much the same as setting
|
||
|
|
up WordPress.
|
||
|
|
Drupal and Jumla both need a web server and PHP in a database to function, and because
|
||
|
|
getting step-by-step installation details in an audio podcast is a little bit challenging,
|
||
|
|
I've added installation guides for Jumla, Drupal, and of course WordPress to the show notes
|
||
|
|
for this episode.
|
||
|
|
One final model of blogging software is the concept of a static website system.
|
||
|
|
Much like the first option, the blog ends up being a collection of static HTML pages,
|
||
|
|
images, and style sheets, and in some cases, JavaScript files.
|
||
|
|
However, like the second example, there's no need to manually code all of the files, because
|
||
|
|
the website is built using a script or a piece of software.
|
||
|
|
These programs will process a set of input files and create the entire website automatically.
|
||
|
|
The website can then be uploaded over FTP like the static file website, or these site
|
||
|
|
generation scripts can be run on your VPS directly, and in some cases, even on shared hosting.
|
||
|
|
One big advantage to static websites is speed.
|
||
|
|
Because none of the content is being generated when users access the page, and there's
|
||
|
|
no database to query, the pages typically render far more quickly than they would in a software
|
||
|
|
package like WordPress.
|
||
|
|
In addition, because the content is just simple static files, these websites are generally
|
||
|
|
more secure since no code has to actually be executed, and no scripts have to be run when
|
||
|
|
the pages are loaded.
|
||
|
|
This reduces the attack service on your web server, particularly if, in the case of a VPS,
|
||
|
|
you don't have extensions like PHP even install on the machine.
|
||
|
|
The website generators typically take content files written in plain text or a text-based
|
||
|
|
format like HTML or Markdown, and run them through a manual or automated process that
|
||
|
|
merges the content with templates that are written in HTML or templating language like
|
||
|
|
YAML.
|
||
|
|
These produce a complete website that's ready to be deployed or copied up to your web
|
||
|
|
server.
|
||
|
|
Static files can be stored on your machine where the script runs, or they can be shared
|
||
|
|
location like in a Dropbox folder, or even outside the file system, in a version control
|
||
|
|
system like Git or subversion.
|
||
|
|
One example of a fairly popular blogging tool is Jekyll.
|
||
|
|
This is the engine behind many of the project pages at GitHub.
|
||
|
|
The system is written in Ruby, and is designed to pull source files from a Git repository,
|
||
|
|
like those provided on GitHub.
|
||
|
|
Another option is the PHP-based secondcrack, which can be configured to read source files
|
||
|
|
from a shared Dropbox folder, making editing on the fly from your phone, or from a tablet
|
||
|
|
pretty easy.
|
||
|
|
For more information on static site generation, check out HPR episode 1370, where Tony
|
||
|
|
Palais gets into detail on static site generation, and a tool called Octopress in particular,
|
||
|
|
which is a technical descendent of Jekyll.
|
||
|
|
Regardless of how you decide to tackle it, with one of the solutions I've talked about
|
||
|
|
today, or a managed pay service, the most important part of any blog is the content.
|
||
|
|
It builds yourself a solution that works for you and allows you to put up the content
|
||
|
|
on your terms and in your own time.
|
||
|
|
The only right solution is the one that actually gets you writing, so get out there and show
|
||
|
|
us how it's done.
|
||
|
|
I hope this has been helpful in getting you interested in tackling your own blogging
|
||
|
|
project.
|
||
|
|
If you're interested in any of the other things I can do, you can find me on Twitter at
|
||
|
|
kdmurry or my blog at kdmurry.net.
|
||
|
|
Thanks for listening.
|
||
|
|
Today's show, like all our shows, was contributed by a HPR listener like yourself.
|
||
|
|
If you ever consider recording a podcast, then visit our website to find out how easy
|
||
|
|
it really is.
|
||
|
|
Hacker Public Radio was founded by the digital dog pound and new Phenomenal Computer
|
||
|
|
Club.
|
||
|
|
HPR is funded by the binary revolution at binref.com, all binref projects are crowd-sponsored
|
||
|
|
by linear pages.
|
||
|
|
For shared hosting to custom private clouds, go to lunarpages.com for all your hosting
|
||
|
|
needs.
|
||
|
|
Unless otherwise stasis, today's show is released under a creative comments, attribution, share
|
||
|
|
a line, free those own license.
|