How to install Drupal 8 – Step by Step

So, you have downloaded Drupal 8 from the downloads page (link here) and extracted it into your web directory. In our example we have used the RC4 release – we’ll update on release day if anything changes in the process. Here’s what you do next:

Select your language – here English:

sotechdesign-com-au-how-to-install-drupal-8-step-by-step-2

Choose your installation profile. If you’re uncertain, choose “standard” – the minimal installation really is quite minimal and if this is your first Drupal experience the standard installation is a lot easier to start from.

sotechdesign-com-au-how-to-install-drupal-8-step-by-step-5

On the next screen you have to enter your database details. We’ll do a future article on how to create a database and a user in mariaDB/mysql but for now, we’ll assume that you have already done that. If your database server is installed on the same machine/VPS that you’re installing Drupal on, leave the advanced settings alone – “localhost” will be correct for the location of the database, and the port should be correct unless you have specifically changed the mysql/mariaDB port!

sotechdesign-com-au-how-to-install-drupal-8-step-by-step

Assuming you entered the database details correctly, the next screen should be the installing process progress bar:

sotechdesign-com-au-how-to-install-drupal-8-step-by-step-7

On our Binary Lane test VPS it took under a minute to complete:

sotechdesign-com-au-how-to-install-drupal-8-step-by-step-8

Put in your site details in the next screen. We like to choose an administrative account name that isn’t “admin”. Make sure to choose a good password! The password strength meter here seems fairly harsh on rating your passwords, which is a good thing.

sotechdesign-com-au-how-to-install-drupal-8-step-by-step-9

Below that, select your default country and timezone settings:

sotechdesign-com-au-how-to-install-drupal-8-step-by-step-6

The next screen is… drumroll… your new Drupal installation!

sotechdesign-com-au-how-to-install-drupal-8-step-by-step-3

It should be a quick and painless process – now enjoy your new Drupal 8 installation! There will be a lot of people trying out the new Drupal 8 once it’s released later this month – check back here for some more articles on the latest update to one of the best CMS’ around!

Installing Aegir 3 on Debian 8 Jessie/Ubuntu with Nginx

So, after a few failed attempts at installing the Aegir 3 Drupal control system we hit upon this “recipe” as what works for us currently on a fresh install of Debian 8 Jessie or Ubuntu 14.04.

This assumes you are logged in as root. First, update and upgrade your system.
apt-get update && apt-get upgrade -y
For the version of OS that currently gets installed with a fresh Binary Lane VPS we also need to update the base system. We like to use aptitude for that; while we’re installing aptitude, we might as well install the other thing that Aegir needs to install properly:
apt-get install curl sendmail aptitude -y
Upgrade:
aptitude safe-upgrade -y
Now, we need to install the database server. We use MariaDB.
apt-get install mariadb-server -y
One that’s done – you will be prompted to enter a root password for the database – we run the following command:
mysql_secure_installation
Don’t worry about changing the root password now that you have already set one, but delete the test database when prompted, disable anonymous access and flush privileges. Now we can install Aegir, nginx, php5-fpm etc.:
echo “deb http://debian.aegirproject.org stable main” | sudo tee -a /etc/apt/sources.list.d/aegir-stable.list
curl http://debian.aegirproject.org/key.asc | sudo apt-key add –
apt-get update
apt-get install aegir3 aegir3-provision aegir3-hostmaster nginx php5-fpm
Enter the hostmaster URL – usually the fully qualified domain name. Enter the database root password once for provision and once for hostmaster. Assuming all of the above has gone well, you should be given a one-time-login link in your terminal at the end of the install process, e.g.:
http://aegir.example.com.au/user/reset/1/1446598196/Nw4T4yd25IWEngCP2d2A_Ck3XslBiobnhbuNzXU4/login
Now, before using that run the following:
visudo
Add this to the end of the file:
Defaults:aegir !requiretty
aegir ALL=NOPASSWD: /etc/init.d/nginx
This gives Aegir – the aegir user – permission to restart nginx without requiring a sudo password. Test this works by doing the following: su – aegir
sudo /etc/init.d/nginx restart
What you want to see then is this:
* Restarting nginx nginx
[ OK ]
Then:
vim /etc/nginx/nginx.conf
Comment out by putting a # in front of:
# tcp_nopush on;
# types_hash_max_size 2048;
# error_log /var/log/nginx/error.log;
Reboot, and use the one-time-link. You should be logged in fine and now can use Aegir!

OS X El Capitan downloaded but is not installing – how to fix it?

El Capitan downloaded but not installing? Read this post to find out how to install it.
When upgrading one of our MacBook Pros today we found that El Capitan downloaded but did nothing else, still showing “download” in the App Store: El Capitan downloaded but not installing? Read this post to find out how to install it. Clicking on the “Download button here does nothing. Selecting the  “Updates” tab shows this: El Capitan downloaded but not installing? Read this post to find out how to install it.Not super handy. However, assuming that it downloaded correctly we can kick off the installer from the Applications folder:   El Capitan downloaded but not installing? Read this post to find out how to install it. This one’s easy – open it as though you would any application and you should see: El Capitan downloaded but not installing? Read this post to find out how to install it. Sorted. Good luck installing the new OS and enjoy! We’re pleased so far.

Upload error 413 “Request Entity Too Large” on Nginx

When trying to upload files to a Drupal installation running on nginx, we got a 413 error: Request Entity too large.   We had gone through and updated the php files with regard to max upload file size limits, but had neglected to do the same to the nginx config file (/etc/nginx/nginx.conf on Debian). We had to add the following line:
client_max_body_size 20M;
  in the http block and restart the nginx server to get uploads working again. The above will set the limit to 20MB; change it to suit your own environment and needs.   You can also add this to the server or location blocks.

Securing Dokuwiki with nginx

After migrating a server from Apache2.4 to nginx a Dokuwiki install was complaining about the following on the admin page:
Dokuwiki security error with nginx
Dokuwiki security error with nginx
  Previously .htaccess files were controlling access, which aren’t used by nginx. You can test your Dokuwiki install’s access by attempting to visit the following url:  
http://yourserver.com/data/pages/wiki/dokuwiki.txt
  If you can see any content there, you need to fix your permissions. We fixed this by adding the following to the site’s nginx config file (e.g. /etc/nginx/sites-available/sitename):  
location ~ ^/(data|conf|bin|inc) { deny all; }
  …in the same section as the other “location” stanzas, then restarted nginx (whether the latter is necessary or not I don’t know, force of habit).

Drupal 7 – Two administrative menus after module installed

In Drupal 7 when trying to use the module “Administration Menu” (quite a handy module) after enabling it we ended up with two menus or toolbars: Drupal 7 - Two menus or toolbars The fix for this is to disable the existing “Toolbar” module – this should remove the original toolbar and leave you with just the new Administration Menu menu/toolbar.

OpenSMTPD and Thunderbird: smtp-in: Bad input on session 5.5.1 Invalid command: Pipelining not supported

While trying to connect to OpenSMTPD running on Debian Stretch Thunderbird couldn’t auto-configure the account and provided the following error in the logs:  
email smtpd[566]: smtp-in: Bad input on session 6567905e3020707c: 500 5.5.1 Invalid command: Pipelining not supported
  This is a Thunderbird config issue, not a server side issue. Change the settings from SSL/TLS to STARTTLS and that should sort it.