This is the documentation for concrete5 version 5.6 and earlier. View Current Documentation

It seems that when ever I set a default language in the Internationalization add on on my websites there is a redirect that occurs from www.example.com to www.example.com/en (en being the default language page), this redirect lags form about 1 second (sometimes more depending on the lag from host and location of the user).

I have come up with two ways to go around this, the easy way and the "hard way"

Easy way:

This is simply done by visiting the landing page on the default language that you have set (i.e www.example.com/en/) and adding a new path "/" to the "Page paths and locations" tab found in the page properties option.

What this will do is create a 302 redirect from www.example.com/ to www.example.com/en/

A 302 redirect means the page has temporary moved to a new location, this will increase the loading time of the default language landing page, but the SEO value is NOT Optimum, as by creating a 302 redirect you are instructing Google that the page has moved temporally and not permanently, so it will keep the previous page cached in its index. (That means if you do have meta data on the old page it will show it the search results, if you do not, it will take it from the new page that you have redirected to).

Hard Way:

If you are running on Apache, open your .htaccess file located on your server and place this inside:

print("Redirect 301 / http://www.example.com/en");

To do this you will need ftp access to your site. This way you instruct Google that the page has moved indefinitely, so it can start taking all the meta information from there to show up in the SERP results.

Note http://www.example.com/en is the landing page of your DEFAULT language (it could be /english, and depends on how you have it set up).

Edit 07-10-2014

Since I wrote this, I found that htaccess method should be advised way to implement this. Redirecting with PHP significantly increases your home page load time.

Quick Explanation: When redirecting with PHP from /Root to /Language the page need completely load on the /Root before redirecting you to /Language page. this could take up to 10 - 15 sec load time, depending on your users location and the server location.

Adding the following line into your htaccess file and removing the default redirect from Internationalization package and the path redirect i mentioned in the "easy way" is advised:

RedirectMatch 301 ^/$ /en/ 

Note that /en/ in this case is the url of the language. so if you have /english as the url of your landing page you should replace that.

Also, since your going to be using your htaccess file to do this, you might as well set your browser caching and server gzip from there as well, you will probably see 20 - 30% boost in page speed, the code is as following:

Browser Cache Credits to Mnkras

ExpiresActive On
ExpiresDefault A2592000
ExpiresByType image/gif A2592000
ExpiresByType image/png A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType image/x-icon A2592000
ExpiresByType application/pdf A2592000
ExpiresByType application/x-javascript A2592000
ExpiresByType text/plain A2592000
ExpiresByType text/css A604800
# end browser caching
# TIME CHEAT SHEET
#      300   5 MIN
#      600  10 MIN
#      900  15 MIN

GZIP Credits to adajad

AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
ExpiresActive On
ExpiresDefault "access plus 30 days"
FileETag none
Loading Conversation