Sysadmins be welcome!

Sysadmins of the North is just another technical blog, like so many others out there. Most posts are written in English, some in Dutch. For the most part, I write as it comes; posts may seem incoherently written sometimes (my apologies). Here on you’ll find all kinds of computer, server, web, sysadmin, database and security related stuff. Browse the latest posts per category here, search for posts, or make a selection from the categories menu.

Drop me a comment somewhere to say hi, or discuss about security, website or WordPress, MySQL optimization and performance, Windows Server and IIS web server topics.



6 Tips to improve Joomla! performance

Joomla! performance tuning on Windows IIS. In this article, I’ll show you how to improve the performance of Joomla! on Windows/IIS with just three six (6) important, but basic, performance tips. Everyone wants a fast loading website, whether it’s based on WordPress, Drupal, Joomla, or something else. For WordPress, a lot of posts are available here to optimize WordPress performance, and Drupal can easily be improved with the BOOST module.

But what about Joomla? How can we optimize and improve Joomla!’s performance and speed easily? Here are three six (6) tips to improve Joomla performance and website loading speed.
Read more

Decoupling Umbraco from your front-end website

Jason Deacon, from Australia’s design and development company Wiliam , writes about how to use a back-end instance of Umbraco 7, which is completely decoupled from the front-end (an ASP.NET MVC 5 site).

Decoupling Umbraco
Our approach leverages a file called “Umbraco.config” which is really just a XML file which Umbraco publishes all its public content to whenever a node is published in the interface. This XML structure mirrors the document types and properties of the site structure populated in Umbraco and therefore offers the perfect snapshot of the content the site can serve, without having to query a database for it.

Read Decoupling Umbraco from your front-end website.

Convert MySQL MyISAM tables to InnoDB

MySQL storage engine, MyISAM versus InnoDB: if you want to convert a MyISAM table to InnoDB, the process is fairly easy.

In the earlier days of MySQL, the default storage engine for your database was MyISAM. This is why you still encounter a lot of examples with engine=MyISAM online. Nowadays, the InnoDB storage engine is MySQL’s default. MyISAM is no longer actively developed, InnoDB is. Therefor, all/most MySQL performance optimizations are for the InnoDB engine and it’s wise to choose this as your table storage engine.

Read more

Send email with Ghost using SMTP authentication and TLS encryption

Ghost Publishing platform uses Nodemailer to send e-mails with Node.js. It can send e-mail using SMTP, sendmail or Amazon SES and is unicode friendly.

As you know, more and more web hosting providers require SMTP authentication (often abbrevated as SMTP AUTH) and a TLS encrypted connection to send email. Here you’ll find some script examples to send SMTP AUTH email over TLS with ASP, ASP.NET and PHP. Can we do the same with Ghost and Node.js?
Read more

Export and migrate WordPress to Ghost

import posts from wordPress in Ghost

A little while ago I installed Ghost on IIS, along with the required Node.js and iisnode module. All in an isolated test environment, in which Ghost runs as a production site only. Now I wanted to import a WordPress blog into Ghost, but failed.

Here’s how I resolved this particular Ghost import error.
Read more

OpenPGP.js, OpenPGP JavaScript Implementation

This just deserves some attention!

OpenPGP.js, OpenPGP JavaScript Implementation: “This project aims to provide an Open Source OpenPGP library in JavaScript so it can be used on virtually every device. Instead of other implementations that are aimed at using native code, OpenPGP.js is meant to bypass this requirement (i.e. people will not have to install gpg on their machines in order to use the library). The idea is to implement all the needed OpenPGP functionality in a JavaScript library that can be reused in other projects that provide browser extensions or server applications.”

“Zo versleutel je je e-mail met PGP”

Dutch tech-news site wrote an extensive article on how to use PGP to encrypt your email. The article is somewhat comparable with my article “Encrypt email with PGP/GnuPG” but dives deeper into the matter.

In Dutch: Zo versleutel je je e-mail met PGP

Don’t buy an Acer Aspire laptop

or at least, rethink it through before buying one

This is personal rant towards #Acer, with an advice undertone: really, really investigate the computer or laptop you want to purchase, because you might get an unhappy surprise that later on the laptop doesn’t meet your expectations.

Read more

Delete all MAILER-DAEMON emails in Postfix queue

Delete all MAILER-DAEMON emails in Postfix queue if it matches a sender or recipient email address condition. When a large scale spam run was sent through your mail servers, you need to clean up and remove those spam messages. Doing so guarantees normal, valid email messages being sent quickly and the spam messages never leave your queue. In Postfix, there are various similar commands to delete messages from the Postfix mail queue. Based on the Message-ID and/or email address…

Read more

Test MySQL database connectivity with ASP.NET, PHP, ASP

Test MySQL database connectivity with ASP.NET, PHP, ASP

Whenever you need to test the MySQL database connectivity from a website or server, it’s handy to have various test scripts nearby. Whether it is because you are setting up a new website or you have just installed a new server and are running your tests. Nowadays, many websites depend on a MySQL or MariaDB database because CMS systems like WordPress, Joomla and Drupal are so popular, and Umbraco too. You want your webserver to connect to MySQL fast and properly :)

Read more

minify JavaScript, CSS and compress images

Website optimization: How to optimize PNG images and minify javaScript and CSS files, the easy and fast way? With YUI Compressor and OptiPNG on the command line (Windows, Linux and MAC OS X). Google PageSpeed Insights recommends optimizing or compressing images such as PNGs, and to minify Javascript and CSS. Minifying resources refers to eliminating unnecessary bytes, such as extra spaces, line breaks, and indentation. Compacting HTML, CSS, and JavaScript can speed up downloading, parsing, and execution time.

Read more

TLS: Test SMTP AUTH PLAIN authentication and verify StartTLS connections

Test StartTLS connections and SMTP-AUTH from the Linux and Windows command line

While investigating SMTP authentication issues, over an Transport Layer Security (TLS) encrypted connection, it’s always handy if you are able to test the SMTP authentication and StartTLS connection from the command line. SMTP Authentication, often abbreviated SMTP AUTH, is an extension of the Simple Mail Transfer Protocol whereby an SMTP client may log in using an authentication mechanism chosen among those supported by the SMTP server.

Read more

“An Absolute Beginner’s Guide To Node.js”

Brandon Cannadya – the CTO of Modulus, a Node.js application hosting platform – wrote an absolute beginner’s guide to node.js.

There’s no shortage of Node.js tutorials out there, but most of them cover specific use cases or topics that only apply when you’ve already got Node up and running. I see comments every once and awhile that sound something like, “I’ve downloaded Node, now what?” This tutorial answers that question and explains how to get started from the very beginning.

What is Node.js?
A lot of the confusion for newcomers to Node is misunderstanding exactly what it is. The description on definitely doesn’t help.

An important thing to realize is that Node is not a webserver. By itself it doesn’t do anything. It doesn’t work like Apache. There is no config file where you point it to you HTML files. If you want it to be a HTTP server, you have to write an HTTP server (with the help of its built-in libraries). Node.js is just another way to execute code on your computer. It is simply a JavaScript runtime.

Read on at An Absolute Beginner’s Guide To Node.js

IIS Outbound Rules with gzip compression uses IIS Outbound Rewrite Rules to offload content from a different server and/or host name. This should improve website performance. Just recently I noticed these Outbound Rules confliced with compressed (gzip) content. I started noticing HTTP 500 errors with the error message:
Outbound rewrite rules cannot be applied when the content of the HTTP response is encoded ("gzip").

This is how I resolved this error.
Read more