Let’s Encrypt is an incredible, FREE, service that allows you to get trusted SSL certificates for your website. The certs expire every 90-days but what is great is that there are a lot of tools for auto-renewing the certificate without you ever having to touch anything on your server… until that process breaks.

Case-in-point: If you are running a Drupal 7 and are using the Apache Rewrite module (you should be…) then the default .htaccess file supplied with Drupal 7 core will block all access to hidden folders. (folders that start with a “.”) This is a problem for Let’s Encrypt because the auto-renew process generates a temporary key file that gets placed in a hidden folder on your web server that the Let’s Encrypt system has to be able to reach publicly (on port 80) in order to validate your server and fulfill your renewal request. Thankfully, another member of the Drupal community has already written the rewrite condition rule that needs to be placed in your .htaccess file to allow access to just the hidden folder required by Let’s Encrypt.
(more…)

I have been learning a ton of PHP lately in an effort to build a significant amount of custom functionality into a Drupal website. As I am not a developer by trade it has been a steep climb upward. Lately I have been refactoring a lot of my code using functions. Being a noob however, I ran into some issues in that I didn’t understand how PHP scoped the usage of variables.

Case in point, I had written a function to generate a bunch of variables dynamically based on some input into the function, but I wasn’t able to use those variables outside of the function. (more…)

I have been doing some work on a drupal site recently and working heavily with Taxonomy.

I had a need to identify Taxonomy terms based on the person that created them.

The problem with taxonomy terms is that unlike traditional content types, author information isn’t automatically appended when a term is created. Terms are just terms. However in Drupal 7 and beyond they are also “fieldable” entities. I will get to why that is so important in a bit…

There is a module I came across called “Private Taxonomy” which seemed to fit my needs perfectly. Until I found out it was a bit buggy and administratively heavy. (more…)

In this DigitalOcean article, as a part of a series to help developers with scaling, we will be talking about configuring Varnish with Drupal. This will greatly reduce the amount of time it takes users to load your Drupal based website, and increase t

Source: How To Configure Varnish for Drupal with Apache on Debian and Ubuntu | DigitalOcean

So I recently setup Varnish on my web servers and it has vastly sped up my sites. However it also broke several things on my Drupal based sites. I ran across this article while trying to kill bugs and it fixed me right up.
(more…)

Need to administer some drupal stuff from the command-line? DRUSH is the answer. But first you need to get it installed. I am putting the commands to run here to do just that for my own future reference. Hope this is of benefit to everyone else!

Elevate yourself:

sudo -s

Check if Pear is installed:

pear version

If not, install it…

sudo apt-get install php-pear

Add the drush channel to pear:

pear channel-discover pear.drush.org

Install drush

pear install drush/drush

Finally, a common use for drush for me is updating modules..

drush pm-update --no-core

Cheers!