I had a few goals when I set out to make a website. First, I realized that I might be the only one who ever looked at it, so I didn’t want it to be costly. Actually, my hope was that I could create the site and find a way to host it for free. Second, I wanted the site to have a clean modern design. Third, I hoped that the experience would teach me more about websites and how they work.
I feel like I was able to accomplish my goals for the most part. I knew I didn’t want to write the html code for the site from scratch, but I wanted to have more control over the site than just using some non-customizable template. I finally decided that I would be happy using WordPress to create the site. It is still based a template, but there are many templates to choose from and each one can be customized. Not to mention if you are feeling extremely brave you can edit the source for template directly. While using WordPress did stifle my goal of using the experience to learn it also made it easier to edit and add to the site in the future.
If you are familiar with WordPress you will know that there are many services that will host a WordPress site for little or no charge. Just go to WordPress.com and check it out for yourself. I decided against this approach, because I wanted more control over the hosting of the site. So I decided to host the site myself on my raspberry pi. There are many tutorials available that detail how to set up a web server on a raspberry pi, I found the tutorial at e-tinkers.com to be particularly useful.
In the end, I set up a nginx web server on my raspberry pi 2 along with MariaDB (a open source branch of MySQL) and PHP. Once I got that stack setup getting WordPress running was as simple as following the instructions at wordpress.org. I thought everything was running great until I tried accessing the site from a WAN. When I accessed the site on my LAN everything worked great, but when I was away from home it would load very slowly and it appeared that only the basic html was loading. It took me some time to track down the problem. Eventually, I discovered that during the setup process WordPress used my local ip address for the site. So when I would access the site from a WAN it was trying to load elements from a ip address on my home network. Once I edited the database entry for the MySQL database entry that WordPress created detailing the sites ip address during the setup process everything worked as expected. I’m not sure if there is a way to make WordPress use the correct ip address during setup, but at least it is not difficult to change later…if you know where to look.
Anyway if you have somehow found your way to my site I hope you enjoy what you find here. I look forward to adding more content in the future.