I have multiple domains which are setup to redirect (301) to my main domain. However I know some of these domains have little to no value in terms of SEO and I would like to get rid of them. But a concern of mine is that there may exist backlinks under these domains.

I checked google analytics and none of these domains came up, but I decided to confirm they would registered if they were used. Unfortunately in testing, my Apache 301 redirect does not seem to preserve the referring URL. I know this is largely dependent on the client, but it seems the consensus is that most of the time this is preserved.

  1. Are there any settings in modern browsers which instruct them to remove a referrer when redirected? I'm getting this behavior in Firefox, Chrome and IE.
  2. Is there anything I can do on the server side which may influence a client to preserve the referrer?
  3. If this is a dead end, what other methods are there to check if there are any backlinks or usages of these aliased domains?

Here is my redirect:

## Redirect non www to www
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteRule ^(.*)$ https://www.example.com$1 [R=301,L]

An referrer is not the same as a redirect.

If you call a page e.g. http://www.example.com and on the page you have one or more resource like Images, CSS and JavaScript files, the browser will get them as well. If the Browser do so he send the original page, in our case this is http://www.example.com as a referrer to the server. Even this is optimal all modern browser do so. There is only one exception if the origin page is a https URL but the resources is http.

Now a redirect is something completely different. If you request is going to a server and the server responds with a 301 redirect the browser understand that the location has changed and therefor requesting the new location.

But if a 301 is for a resource (image,css,js,etc.) the refer will usually send again to the new location. The same exception applies here with https and http (see above).

A referrer will not be send by the Browser if a user enter a URL into the browser e.g http://example.com and this URL will be redirected to http://www.example.com, because http://example.com is not the referring page it was just redirected to a new location.

Now to the possible solution: you could add some UTM Parameters to your redirect https://en.wikipedia.org/wiki/UTM_parameters . This will be tract by Google Analytics. So you see if a page was called with this UTM Parameters and that means that it was called by a redirect. You can do statistic of how many times that page is called with this parameter or what source was the most used etc. Of course if someone have disabled JS or have any Anti-Tracking plug in than you will not see this call in your statistic.

## Redirect non www to www
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC]
RewriteRule ^(.*)$ https://www.example.com$1?utm_source=%{HTTP_HOST}/%{REQUEST_URI}%?{QUERY_STRING}&utm_campaign=redirect [R=301,QSA,L]
| improve this answer | |
  • Thank you for your response. I'm going to read through the link you provided and look into UTM parameters. I'll update once I get it working. – d.lanza38 Oct 6 '17 at 13:53

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.