2013-03-18 5 views
1

Строка запроса Google Analytics во входящей ссылке нарушает отображение моего сайта.Строка запроса строки

Кто-нибудь знает, почему следующий вызовет мой сайт, чтобы потерпеть неудачу, чтобы загрузить свою домашнюю правильно (появляется, чтобы предотвратить загрузку некоторых плагинов, что потребности страниц)

http://mysite.com/?utm_medium=email 

Хотя это не:

http://mysite.com/#utm_medium=email 

И если вы знаете, почему, как исправить это? У меня есть входящие ссылки, которые используют метод строки запроса, и все они приводят к тому, что посетитель просматривает сломанную домашнюю страницу.

Сайт использует «красивые URL-адреса», поэтому для маршрутизации сайта нет строк запроса. Я попробовал просто удалить строку запроса через apache rewrite (что легко сделать и работает, я приведу пример ниже), но затем я полагаю, что Google Analytics не сможет отслеживать, что нужно, если я это сделаю.

Вот в случае моего .htaccess, что факторы в него:

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/

# Handle redirection from https to http 
RewriteCond %{HTTPS} =on 
RewriteRule ^(.*)$ http://%{HTTP_HOST}/$1 [L,R=301] 

# Example of what would strip query strings from url 
#RewriteCond %{THE_REQUEST} \?[^\ ]+ 
#RewriteRule (.*) /$1? [R=301,L] 

RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 
# END WordPress 

Extra

В дополнение к @ решения FAA и включения @ бит Эдуардо в этом я также необходимо исключить из каталога администратора. Я сделал это, добавив:

RewriteCond %{REQUEST_URI} !^\/*(wp-admin) 

ответ

2

«Хотя это не делает:http://mysite.com/#utm_medium=email»

При использовании # работ и является допустимым вариантом вместо знака вопроса в запросах, вы можете попробовать что-то например:

# Example of what would strip query strings from url 
RewriteCond %{QUERY_STRING} . 
RewriteRule ^(.*) /$1#%{QUERY_STRING}? [R=301,L,NE,NC] 

Перенаправления

http://mysite.com/?query в

http://mysite.com/#query

+0

Thx. Сначала это не работало, но, как это часто бывает с htaccess, кажется, что что-то было кэшировано ... оно в конечном итоге очистилось, а затем это сделало трюк. Я также использовал наконечник @ Эдуардо за то, что GA принял хэш. – Stuart

1

Сценарии обычно должны игнорировать параметры запроса, которые они не ожидают. Это хорошее эмпирическое правило, что один из ваших сценариев пренебрегает. Вам нужно будет отследить, что является нарушающим сценарий, и исправить его самостоятельно. Или укажите здесь дополнительную информацию, которая упростит устранение неполадок. URL-адрес страницы, на которой он может воспроизводиться, - это начало, с URL-адресом, который мы можем, по крайней мере, изолировать для проблемы с клиентом или сервером.

В качестве временного решения можно использовать анкер вместо:

http://mysite.com/#utm_medium=email

Просто убедитесь, что вы настроить Google Analytics, чтобы понять параметры внутри анкерной части URL.

Просто добавьте следующее перед вызовом _trackPageview.

_gaq.push(['_setAllowAnchor', true]); 

Ссылка: https://developers.google.com/analytics/devguides/collection/gajs/methods/gaJSApiCampaignTracking#_gat.GA_Tracker_._setAllowAnchor

Смежные вопросы