传入链接上的 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
额外的
除了@faa 的解决方案和将@Eduardo 的位合并到此之外,我还需要排除管理目录受到影响。我通过添加:
RewriteCond %{REQUEST_URI} !^\/*(wp-admin)