How can I find what search terms (if any) brought a user to my site?

て烟熏妆下的殇ゞ 提交于 2020-01-23 10:41:25

问题


I want to create dynamic content based on this. I know it's somewhere, as web analytics engines can get this data to determine how people got to your site (referrer, search terms used, etc.), but I don't know how to get at it myself.


回答1:


You can use the "referer" part of the request that the user sent to figure out what he searched for. Example from Google:

http://www.google.no/search?q=stack%20overflow

So you must search the string (in ASP(.NET) this can be found be looking in Request.Referer) for "q=" and then URLDecode the contents.

Also, you should take a look at this article that talks more about referrers and also other methods to track your visitors:

http://www.15seconds.com/issue/021119.htm




回答2:


This is some code to backup the idea of using a querystring method and if that's not available using the UrlReferrer property of the Request object. This can then be stashed in a session object (or somewhere else if that works better for you) so that you can track the source between pages. (Page_Load doesn't seem to be formatted correctly inside the code sample here)

public void Page_Load(Object Sender, EventArgs E) {
            if (null == Session["source"] || Session["source"].ToString().Equals(string.Empty)) {
                if (Request.QueryString["src"] != null) {
                    Session["source"] = Server.UrlDecode(Request.QueryString["src"].ToString());
                } else {
                    if (Request.UrlReferrer != null) {
                        Session["source"] = Request.UrlReferrer.ToString();
                    } else {
                        Session["source"] = string.Empty;
                    }
                }
            }}


来源:https://stackoverflow.com/questions/57004/how-can-i-find-what-search-terms-if-any-brought-a-user-to-my-site

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!