Code Ooze

Web Design Articles

How to run Apache in a docker container

This article describes how to run the Apache HTTP Server in a docker container in Ubuntu 18. This is a useful approach when you don’t want to install Apache directly in Ubuntu. This article will also cover how to mount a local directory into the docker container, allowing you to create your website locally while having it served by Apache in a docker container. These steps assume you already have docker installed in Ubuntu.

Install Docker in Ubuntu 18

This article describes how to install Docker CE in Ubuntu 18.04 LTS. Follow the steps below to install Docker in Ubuntu 18 using the repository, or you can refer the official Docker Docs for other options. Docker is a popular container platform. Visit the official Docker website for more info: https://www.docker.com/ How to install Docker Launch a new terminal window

Install PHP in Ubuntu 18

This article is the third in a mini-series of quick reference guides for installing Apache, PHP, and MySQL in Ubuntu 18. In this article we will cover the installation of PHP 7.2 and the Apache PHP module. Lastly we’ll verify PHP works with Apache. My environment for these steps is Ubuntu 16 running on VirtualBox in Windows 10 x64. Previous articles Check out the previous articles where we installed Apache HTTP Server and MySQL.

Install MySQL in Ubuntu 18

This article is the second in a mini-series of quick reference guides for installing Apache, PHP, and MySQL in Ubuntu 18. In this article we will cover the installation of MySQL Server in Ubuntu 18, and take a quick look at using the mysql client. My environment for these steps is Ubuntu 18.04 LTS running in VirtualBox on Windows 10 x64. Previous articles Check out the previous article where we installed Apache HTTP Server.

Install Apache in Ubuntu 18

This article is the first in a mini-series of quick reference guides for installing Apache, PHP, and MySQL in Ubuntu 18. These steps are possibly the minumum required for getting a web development environment up and running, and can be used for local testing of your web development. This first article will cover the installation of the Apache HTTP Server. My environment for these steps is Ubuntu 18.04 LTS running on VirtualBox in Windows 10 x64.

HTTP/2 with NGINX & Wireshark in Ubuntu (Part 3)

Part 3: Wireshark install and HTTP/2 traffic capture This article continues the HTTP/2 server push series by describing how to capture and decrypt HTTP/2 traffic with Wireshark. Since HTTP/2 requires TLS (HTTPS) we need to be able to decrypt any captured traffic before it can be inspected. This article describes how to do this with Firefox Developer and Wireshark. I hope you enjoy it. (adsbygoogle = window.

HTTP/2 with NGINX & Wireshark in Ubuntu (Part 2)

Part 2: Docker install and container build This article is part 2 in a series about HTTP2 server push in NGINX. This article continues with the environment setup by describing how to install Docker and configure a Docker container running the NGINX web server with HTTP/2 and HTTPS in Ubuntu 18. Previously… Check out these previous articles which describe setting up the environment and configuring NGINX web server for HTTP/2:

HTTP/2 with NGINX & Wireshark in Ubuntu (Part 1)

Introducing HTTP/2 HTTP/2 is the latest version of the HTTP protocol and offers several performance improvements, including multiplexing and server push. IETF, the standards organisation responsible for the development of HTTP, describes this latest version on their HTTP/2 website: “HTTP/2 is a replacement for how HTTP is expressed “on the wire.” It is not a ground-up rewrite of the protocol; HTTP methods, status codes and semantics are the same.

Hugo Shortcodes: Links with target="_blank"

If you do a lot of content development with Hugo then you have probably noticed that by default there is no way to specify the target attribute of a URL. This is especially important when you want a link to launch in a new browser tab. This solution uses Shortcodes. The Hugo documentation defines a shortcode as “a simple snippet inside a content file that Hugo will render using a predefined template”.

Install PHP in Ubuntu 16

This article is the third in a mini-series of quick reference guides for installing Apache, PHP, and MySQL in Ubuntu 16. In this article we will cover the installation of PHP 7 and the Apache PHP module. Lastly we’ll verify PHP works with Apache. My environment for these steps is Ubuntu 16 running on VirtualBox in Windows 10 x64. Previously… Check out the previous article where we installed Apache HTTP Server.

Install MySQL in Ubuntu 16

This article is the second in a mini-series of quick reference guides for installing Apache, PHP, and MySQL in Ubuntu 16. In this article we will cover the installation of MySQL Server. My environment for these steps is Ubuntu 16 running on VirtualBox in Windows 10 x64. Previously… Check out the previous article where we installed Apache HTTP Server. Install Apache in Ubuntu 16 (adsbygoogle = window.

Install Apache in Ubuntu 16

This article is the first in a mini-series of quick reference guides for installing Apache, PHP, and MySQL in Ubuntu 16. These steps are possibly the minumum required for getting a development environment up and running, and can be used for testing your web development locally. This first article will cover the installation of the Apache HTTP Server. There are many excellent guides availble which provide much more explanation. For a more detailed walkthrough of the process the below examples may be useful:

Hugo Shortcodes

Today I want to share my first glance at Hugo Shortcodes. In a previous article I described how to install Hugo. Content authoring is where I’ll spend most of my time with Hugo, so understanding the formatting options is important. This article will introduce two simple examples of formatting and arranging content in Hugo: traditional CSS, and Hugo shortcodes. The traditional CSS approach We can use CSS in Hugo sites as we would in any site:

Hugo: Adding a new site directory

Previously I completed a basic Hugo install with the Blackburn theme. The default site structure contains a directory to store the various pages: /content/post/ We can create subdirectories within \post to suit our needs and organise content, and that is fine. However, you may be tempted to create additional directories at the same level as \post, in which case you will need to delve into Hugo’s inner workings.

Hugo: Adding a Table of Contents

Today I will disuss how to include a Table of Contents (TOC) on a Hugo page. I’ll be referencing the Hugo documentation. While working through these steps I also found this discussion page had some helpful information. As usual, I’m working with the Blackburn theme. Include TOC on every page The default site hierarchy in the Blackburn theme centres around the \content\post directory.

Mediawiki: Mobile support

In a previous article I mentioned that I run a local instance of Mediawiki. More recently, I’ve wanted to view my local wiki on my mobile device, however Mediawiki doesn’t support this by default. Thankfully, there is an Extension for that: MobileFrontend. Install MobileFrontend extension Download the extension and extract into \mediawiki\extensions\MobileFrontend Edit LocalSettings.php and add the following: wfLoadExtension( 'MobileFrontend' ); $wgMFAutodetectMobileView = true; The Mobile homepage formatting guide provides some tips.

Mediawiki Upgrade

For several years now I’ve been running a local instance of Mediawiki, and in that time I’ve only upgraded it once. And that’s a problem. Because now I’m scared to touch it. Sure, I perform backups regularly. But I’m scared I’ll lose all those years of content if something goes wrong. And an upgrade would require hours I don’t have. Or so I thought. With a litte free time and an acceptance that things may break, I jumped in.

Getting started with Hugo

Hello World Yes, this is my first static website generated with Hugo. I first got into web design as a kid in 1996 with Geocities (remember Geocities?) before it was aquired by Yahoo. I spent hours manually creating hundreds of static pages involving a lot of copy/pasting. But hey, my web journey was young and I didn’t know any better. Later, I discovered the concept of dynamic websites, and for a long time I didn’t really consider static sites to be useful.