2

My website consists of an English-language Homepage (my index.html file), and a German and Russian translation of this page (de.html + ru.html), which are accessible through a button on the top-right.

After some research regarding SEO, I discovered that placing a keyword into the URL itself is helpful for search result visibility. I now wonder how I can accomplish that.

Should I create a new subdirectory in my public root and give it a keyword as its name? Then place the index.html file (and the two translations – de.html + ru.html) into this folder, so that my URL is always www.example.com/keyword/***.html in the search results? I suspect this requires some redirecting and *.htaccess( change, but I’m not sure how to do it.

1

Can I create a keyword subdirectory for my home page to help SEO?

You could, however, this may not help much with SEO. The URL doesn't necessarily help that much with ranking (on page content is what really matters), although it could perhaps help click through rates when users see the URL/keyword in search results.

I suspect this requires some redirecting...

However, if you are changing an established URL structure then this may even have a negative SEO effect - at least initially. Changing the URL structure always carries a certain amount of risk.

But yes, if you are changing the URL structure then you will need to implement an external redirect in order to preserve SEO. For example:

RewriteEngine On

# Redirect "/index.html" to "/keyword/index.html"
RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteRule ^index\.html$ /keyword/index\.html [R=301,L]

(It's not clear from your question whether index.html is actually part of the visible URL, or you are simply letting mod_dir serve the DirectoryIndex document having requested the directory.)

...and a German and Russian translation of this page

But don't you also need the corresponding German and Russian keywords in the URL, not the same (presumably) English keyword?

Should I create a new subdirectory in my public root and give it a keyword as its name?

You could, but you don't necessarily need to create a physical subdirectory by that name - it could be entirely virtual, and use mod_rewrite in .htaccess to internally rewrite the request to the appropriate file. (An internal rewrite is entirely internal to the server and hidden from users - the visible URL in the browser's address bar does not change.) However, having the different translations entirely separate in their own subdirectory could be advantageous since you will often have different images and stylesheets that accompany different translations.

For example, to internally rewrite the requested URL from /keyword/index.html to /index.html (the actual file) then you could do something like the following after the external redirect (above):

# Rewrite "/keyword/index.html" to "/index.html"
RewriteRule ^keyword/index\.html$ /index.html [L]

English-language Homepage (my index.html file), and a German and Russian translation of this page (de.html + ru.html)

For consistency, I would also consider having en.html (or similar) instead of index.html for your English language version.

You could then have home page URLs of the form /en/, /de/ and /ru/ - which is more obvious to users.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.