Find below some information for setting up a website without too many technical details. Before you start, some choices need to be made:
- do it yourself or have it done (partly).
- determine what the content will be.
- determine what should not be published.
- establish who the target audience will be.
Setting up a website all by yourself takes quite a bit of time and effort:
- Server setup (Windows, Linux).
- Choose and register domain name.
- Set up web server (Apache, NGINX).
- Choosing web software (WordPress, Drupal, Joomla, ExpressionEngine, Plone, SilverStripe etcetera) or simply in HTML.
- Determine number of languages in which the website will appear.
- Building the content (webpages, posts, images).
Have a website built
There are several providers who can fully or partially host or build a website. If you type ‘website’ or ‘website hosting’ in your search engine, you will get plenty of results. In this article, we won’t go further into that, except to say that this is a quick way should you be in a hurry.
Build your own website
That is the main topic of this article. The website you are looking at now runs on:
- Server: Raspberry Pi
- OS: Raspberry OS (Linux)
- Software: PHP, MariaDB
- Web server: NgInx in reverse proxy setup with Apache.
- Web software: WordPress.
Since only open source software is used, the costs mainly consist of the purchase of a Raspberry Pi and an internet domain, in this case www.sparreboom.net.
Server
Anything can be chosen as a server, such as an old PC, but keep in mind the electricity costs. A server is basically on day and night, so costs can be quite high. A small computer like the Raspberry Pi has the disadvantage that it cannot serve hundreds of visitors at once, but genealogy websites are usually not visited that frequently.
Software
Getting a website up and running requires a number of software programmes. Apart from an operating system like Linux, you will at least need Nginx and/or Apache (web servers that make the pages accessible so you can see them in your browser). In addition, PHP (a programming language) and MariaDB (a database where all pages, users and the like are stored). It would go too far to describe all the details here, but there are quite a few websites where this information can be found, for instance here.
WordPress
As a genealogist or family foundation member, you want to be concerned with the content and not the technology behind a website. A content management system (CMS) like WordPress is designed so that version control, user rights, search options and media like images, sound clips and the like are technically available without you having to worry about how it all works behind the scenes. And that saves a lot of work! WordPress is free to download, here, and installing it is not difficult.
Domain
Once the website is running, you can use it at home once the server is connected in your own network. But the home network is cut off from the outside world by the router connected to the internet. So you will have to open a port in the router settings so that the server is exposed to the internet. Opening a port is not without risk, and you will have to do it in such a way that that port only lets information through to that one server and not to the rest of the home network. And the server should have settings in place that only and exclusively sends and receives to that port.
On the internet itself, every website has its own address, a number like 142.250.179.131 that nobody wants to remember. That is why DNS (domain name service) was invented that translates a more memorable name like www.google.nl to the address 142.250.179.131. So to make your server findable via DNS, you need a domain name like www.sparreboom.nl. If you search for ‘domain name’ with a search engine like Google, you will find lots of providers. Look through the offers though, you will need a domain name like this for a long time and so what you will pay after three months is important.
Certification https
By default, a website is accessible via http, a protocol for sending webpages. But that protocol has a number of security risks that have been somewhat resolved via the https protocol, recognisable by the padlock at the beginning in many browsers:
If your website does not support that protocol, many visitors to your website will get a warning from your browser. To avoid this, it is better to use https, which requires a certificate. Fortunately, you can get one for free from Let’s Encrypt these days. That certificate needs to be installed in the server and renewed regularly, something that can be automated.
And now?
The above story will deter many readers from putting together a website themselves because you have to delve into a lot of things. Nevertheless, it is definitely doable if you are willing to work systematically and search the internet well. You can even find YouTube videos:
It’s a fun hobby anyway, just like genealogy.