I found out about the Plusberry Pi somewhere in October 2015 and was immediately excited! I had been using my raspberry Pi rev B for a number of months as a media player (with OpenElec) and was getting increasingly pleased with its performance with every new OpenElec upgrade. For such an extremely affordable piece of hardware I found its performance very fulfilling. There were just a few minor annoyances: The fact that I had to use a external USB HDD means I had to also use a USB HUB (to power the HDD). This meant that I was looking at a truck load of hardware sitting in my living room: I just didn't look like the great piece of technology I was telling my friends about.
The other minor annoyance is that the Raspberry Pi does not have an on/off switch which means that the USB HDD connected to the USB HUB is always turned on (I'm still not sure whether that has a negative or positive impact on the life expectancy of the USB HDD).
The Plusberry Pi should solve both these minor annoyances. I ordered mine immediately and have been following the Plusberry Pi updates anxiously. It looks like it will be shipped within a couple of weeks and I can't wait to get my hands on it!
In this blog I want to share with you what I have found on my search to improve SEO for a Drupal 7 website. This is basically a summary of everything I found in a LOT of different articles scattered around the internet. I will not even try to compile a list of all the different articles I found to be helpfull but I have tried to put in as many links as I can to point you to other usefull information.
This page is work in progress: Everytime I've learned something new about SEO I'll update this page.
In a nutshell I found that the following are the most important topics to address in creating a SEO friendly Drupal 7 website:
- make your website responsive
- incorporate social media in your website
- reduce response and load time of your webiste
- make sure the content of your website adheres to a set of guidelines
I'll address the first and second topic seperately below and then cover the Drupal 7 modules you can install that will help to improve SEO friendliness of your website, the guidlines to adhere to when creating content and finally some tips and tricks.
Make your site responsive
Responsive websites rank higher. There are many ways to achieve this. Nowadays Bootstrap is an excellent and very popular framework. I used Bootstrap in my theme to make my website responsive.
Incorporate social media in your site
Plenty of information to find on this topic. Suffice it to say that by using Twitter, Facebook, Google+, etc and incorporating these in your website has a very positive effect on your website traffic.
Drupal 7 modules
Avanced CSS/JS Aggregation module
This module aggregates and compresses all used JS and CSS files. I found this module to be extremely efficient. Install the Drupal 7 Advanced CSS/JS Aggregation module, activate it and then go to Configuration -> Performance and:
- Enable page caching
- Aggregate and compress CSS files
Install the Drupal 7 Metatag module, activate it and configure it as follows:
- give a Description for your Front page and each Node pages
- click the following checkboxes under advanced: Allow search engines to index this page (assumed), Allow search engines to follow links on this page (assumed).
Install the Drupal 7 Global Redirect module and activate it (no additional configuration needed)
Install the Drupal 7 XML Sitemap module, activate it (at least the core module and the Nodel module) and cofigure it as follows:
- make sure the Front Page is added
- configure which nodes of which content types are added to the Sitemap
Make sure the Sitemap is generated and check if all necessary links are present in the sitemap (by clicking on the sitemap)
Guidelines for content
Fix all HTML errors
I use the W3C Validator to check if my site contains any HTML errors.
Optimize all your images
Make sure alle your images are optimized. This means that all images:
- use the alt text attribute
- have the correct size
- have a meaningfull file name
- have a meaningfull caption (which, I confess, I'm not doing on this site)
Read all about this on this page.
Use meaningful first and second level headings
Every page must at least have a meaningful first level heading (H1) and prefebly a second level heading (H2) that is also meaningful.
Don't use inline style elements
Make sure the HTML of the PHP templates of your Drupal 7 theme as well as the HTML of your content does not contain any inline style elements.
Tips and tricks
Create a Google Analytics account and register your website. Add the required js code to your Drupal 7 theme.
Google Webmaster Tools
Create a Google Webmaster Tools account and register your website (which is easy after you have registered your website in Google Analytics). Add your Sitemap in Crawl -> Sitemaps.
Fix URL canonicalization issue
Your out-of-the-box Drupal website usually has a canonicalization issue: www.yourwebsite.com is ussually the same as yourwebsite.com. If this is the case than the same page on your website will be indexed twice. To avoid this issue you have to edit the .htacces file in your Drupal root. See this page for more information and how to fix your .htaccess file.
Server respons time
The longer it takes to load your site, the lower your ranking is. There is much you can do to lower the response time of your website (caching, optimize your images, use a CDN, etc) but even then the response time of your site can still suck! Make sure you select a hosting provider that provides optimization for Drupal websites. There is plenty to find on this topic. The amount of memory and CPU power/time available to your website has a significant impact on the response time of your website. Several hosting providers offer Litespeed web hosting which should be much faster than Apache.
Test test test
There are plenty of websites that offer a free SEO check (and give your website a score). These checks ussually incorporate at least the things I've mentioned above (and in most cases, much more). I use the following sites regularly to score my Drupal 7 websites:
Getting your personal files in the cloud is easy nowadays. Since we all know that accidents happen and others might be watching, getting your files safe in the cloud seems to be quite hard. By using a combination of Dropbox and Boxcryptor you have a user friendly and safe solution. In this blog I'll explain the proces of installing and configuring both tools in Windows.
Installing Dropbox is easy enough. Just download the setup and follow the steps on their website.
During this process you'll be asked for an email address and password. For standard usage you don't need to change any preferences.
Dropbox acts as a synchronization tool: Any file you will put in the Dropbox folder will be synched to a backup location in the cloud. All other devices are also synched to the cloud.
You can find your Dropbox folder in Windows Explorer under Favorites.
Download the setup file from the Boxcryptor website and run it. The install process is very straight forward and easy enough. You van use all the standard settings (during installation other third party software will be installed automatically as well).
After installation you will be prompted with the following screen:
You now have two options:
- create an online profile. As far as I understand this means that your decryption key and password will be stored in the cloud by Boxcryptor
- create a local profile. This means that a local key file will be created and your password will not be stored anywhere
Please read the pros and cons carefully. I didn't feel comfortable having my password stored online so I chose for the local solution. Downside of this option is that you will not be able to access encrypted files by the mobile devices apps. I will continue this blog with the local solution:
- click on the option to use Boxcryptor locally (on the bottom of the screen)
- click on the Local Account button
- check the box that you understand the risk and click on the Create button
- now you have to choose a name and location for the key file. I choose to store the key file in my Dropbox folder to make sure I will never loose it.
- choose a safe password, check the boxes and click on the Ok button
- click on the Ok button after which your key file and account will be created
- choose the free version, click the Ok button and click through the tour
After finishing the tour you'll see the following screen:
Enter your password and click on the Ok button. It is safer to leave the checkbox that offers you to remember your password unchecked. This does mean however that you'll have to enter your password every time you start Windows.
After this finishing the proces above a new device (X:) Boxcryptor has been created on My Computer (you can also find Boxcryptor in Favorites). Click on the Boxcryptor folder and you'll find the Dropbox folder located in it. Anything that you have put in your Dropbox folder can be encrypted. The best thing about this solution is that you can selectively encrypt files that you store in Dropbox. By using the Dropbox app you will be able to view any non encrypted file.
Safe a file in the cloud and encrypt it
- drag a file in the Dropbox folder
- locate the file in the Boxcrypt folder, press right mouse button, choose Boxcryptor and choose Encrypt
After a file (or all files in a folder) has been encrypted they are no longer directly accessible from the Dropbox folder but only from withing the Boxcryptor folder (Boxcryptor decrypts files on-the-fly).
These are the basics of using encryption inside your Dropbox account by using Boxcryptor. There's tons articles, help files and howto's on the internet so I'm sure you'll be able to find more information. Enjoy using this safe combination.
In this Blog I'll explain how you can create your own state of the art media player with the awesome raspberry Pi. You will be able to watch movies, tv series and streaming content as well as listen to your cd collection and streaming content. I use the Raspberry Pi mainly to watch movies from a connected USB hard disk.
Main advantages of this media player above out of the box mediaplayers are (amongst others) the price, always having an up to date gui (latest version of XBMC), use one remote control of both your Raspberry Pi and your tv (if your tv supports CEC) and endless flexibility (such as choosing a skin, different distributionsof XBMC, etc).
What do you need?
You will need the following items: a Raspberry Pi with case - I bought mine at NewIT, a 4Gb SD card, a powered USB hub (with an adapter of at least 2 Ah) - like this one, a USB wireless ethernet adapter - like this one, a USB memory stick (or an 2,5 inch external USB hard disk), a USB to USB mini cable and finally an HDMI cable. You will also need a multi card reader connected to your pc (to read and write to the SD card), a USB keyboard (to make life a lot easier during configuration) and a tv with CEC. Make sure that all items work with the Raspberry Pi by checking this page.
Connect one of the USB port of the USB hub to the USB mini port of the Raspberry Pi to power it. Connect the USB memory stick (or USB hard disk) and the wireless ethernet adapter to the USB hub. Finally connect the HDMI cable to your tv.
I assume that you are using Windows in this blog. Slide the SD card in the multi card reader and do the following:
- install SD Formatter
- install Disk Imager
- download the latest stable version of OpenElec here (the .zip file) and unzip the .img file. At this time OpenElec 3.2.4 is the best and stable version.
- format the SD card with SD Formatter
- write the downloaded image of OpenElec to the SD card with Disk Imager
Remove the SD card from the multi card reader and slide it in the Raspberry Pi. Connect a USB keyboard to your Raspberry Pi and connect power to the USB hub to turn on the Raspberry Pi. If all goes well you will see the main screen of XBMC after about a minute.
Now configure the following things:
- set your wifi settings in System > OpenElec OS > Network. Use a static IP address to simplify reaching your Raspberry by SSH or FTP.
- turn on SSH and Samba in System > OpenElec OS > Services
- turn off "Show RSS news feeds" in System > Appearance > Skin
- set your language, region, etc in System > Appearance > International
- set "Adjust disply refresh rate match video" to "always" in System > Video > Playback
- set "Service for weather information" to None in System > Weather > General
Restart the Raspberry Pi and check if the date and time have been set correctly (since your Raspberry Pi can only obtain date and time settings from the internet this is a good check to see if you configured your wifi correctly).
Buy and install MPEG Codec
If you like to watch MPEG video's you'll need to buy the codec at the official Raspberry Pi store. Please note that it will take a day or so before the Codec will be sent to you. You will need to sent the serial code of your Raspberry Pi with the order. This is how you can get your serial code:
- Download the PuTTY executable and store it somewhere on your hard disk
- execute PuTTT
- enter the static IP Address of your Raspberry Pi and hit Open
- now enter the standard credentials (user: root, pw: openelec)
- follow these directions
After having received the Codec number do the following:
- use PuTTY to log on to your Raspberry Pi
now enter the following commands:
mount -o remount,rw /flash
- you are now in the somewhat Spartan but very well knwon Linux edit tool called vi. Press CTRL-G to go the bottom of the file you are editing and use the arrow keys to get to the beginning of the line that starts with: # decode_MPG2. Press the d key twice to remove the line. Go to the email with the license key in it. Copy the whole line with the key and return to PuTTY. Now press the i key, press the right mouse button and hit enter. Your license key has been copied in the file. Now press the ESC key and type :x to save and exit vi.
enter the following commands:
mount -o remount,ro /flash
Your Raspberry Pi will reboot and you are ready to enjoy your new media player! Browse through the tons of Add ons to get another skin, different scrapers or anything else you would like to use. I think XBMC is fairly intuitive in its usage so I won't bother giving you a full tutorial on using it. I'm sure these can be found in abundance on the web should you need it.
The only down side of this setup is the absence of an on/off switch. You need to power the HUB to turn on the Raspberry but this is about the only nuisance I have experienced so far.
Tips and Tricks
Since using the Raspberry Pi for a while I have learned a few things:
- I recomend to use simple skins because fancy skins slow down your Raspberry Pi significantly. Best experience can be achieved with the standard Confluence skin or the Quartz skin
- make a backup of your SD card once in a while to be able to restore your XBMC setup and your libraries. You can use Disk Imager to read an image from SD card and store it on your hard disk
- if you choose to overclock your Raspberry Pi (as I did), make sure that you use the correct settings. Using incompatible settings can lead to very strange behaviour. See this post for example