1. Advertising
    y u no do it?

    Advertising (learn more)

    Advertise virtually anything here, with CPM banner ads, CPM email ads and CPC contextual links. You can target relevant areas of the site and show ads based on geographical location of the user if you wish.

    Starts at just $1 per CPM or $0.10 per CPC.

Keyword Tracker "no results available"

Discussion in 'Keyword Tracker' started by slowtalkinjones, Sep 29, 2013.

  1. #1
    Hi,

    I've been struggling with this for a long time, and I thought I just closed in on the solution. I retrieved and posted a new copy of the PHP code on my server. It returns:
    a:1:{s:7:"results";s:4:"9999";}
    PHP version is 5.3.

    I installed (re-installed) cURL and certificates. Seems to work ok. I use a DOS command window to go to an https Google page, and cURL reports (using -v) the exchange of certificates. I did the same thing to an https DigitalPoint page and it also seems to work file.

    I checked my account at Google API and everthing is set ok. the account is valid, and billing is turned on (just in case I ever can get queries to work).

    So, I'm at a loss. Despite alll the piece-parts seeming to work ok, I still can't get Tracker to get any results.

    thanks in advance for your help.

    btw, I'm a Premium Member.
     
    slowtalkinjones, Sep 29, 2013 IP
  2. digitalpoint

    digitalpoint Overlord of no one Staff

    Messages:
    38,333
    Likes Received:
    2,613
    Best Answers:
    462
    Trophy Points:
    710
    Digital Goods:
    29
    #2
    Do you see the requests being made to the script in your web server log?
     
    digitalpoint, Sep 29, 2013 IP
  3. slowtalkinjones

    slowtalkinjones Member

    Messages:
    29
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    41
    #3
    Yes, here is a line (it gave the error "no results available") (I had to break up the line to prevent it from being treated as a link by this page):
    2013-09-30 14:06:55 209.222.129.143 GET
    /DigitalPointSEOTrackerTool.php
    se=g&d=50&l=9999&q=christian+internet+radio&u=
    w w w .
    surfernetwork . com
    %5Chtml%5Cfaith-based.asp&s=1&k=
    surfer-digital-point-seo-tracker-tool-07836&e=%26cx%3D010711350987693971998%3Ambzwbs7txpi%26gl%3Dus 80 - 216.9.35.59 Digital+Point+Tracker 200 0 0 679
     
    slowtalkinjones, Sep 30, 2013 IP
  4. digitalpoint

    digitalpoint Overlord of no one Staff

    Messages:
    38,333
    Likes Received:
    2,613
    Best Answers:
    462
    Trophy Points:
    710
    Digital Goods:
    29
    #4
    If that's exactly as it was, then you have your Google API key wrong in your settings.
     
    digitalpoint, Sep 30, 2013 IP
  5. slowtalkinjones

    slowtalkinjones Member

    Messages:
    29
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    41
    #5
    The API key is correct. Just to be sure, I just now copied from the Google API Console and pasted into the tracker settings and tested again. Same result: "No results available".
     
    slowtalkinjones, Sep 30, 2013 IP
  6. digitalpoint

    digitalpoint Overlord of no one Staff

    Messages:
    38,333
    Likes Received:
    2,613
    Best Answers:
    462
    Trophy Points:
    710
    Digital Goods:
    29
    #6
    If it's set to, "surfer-digital-point-seo-tracker-tool-07836" or similar, it's wrong. The API key is a randomly generated string. Check the screenshot that shows where to get it on the settings page.
     
    digitalpoint, Sep 30, 2013 IP
  7. slowtalkinjones

    slowtalkinjones Member

    Messages:
    29
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    41
    #7
    OK. Sorry. I had that wrong. I now copied and pasted the random number string into Settings, but I still get "no results available".
     
    slowtalkinjones, Sep 30, 2013 IP
  8. digitalpoint

    digitalpoint Overlord of no one Staff

    Messages:
    38,333
    Likes Received:
    2,613
    Best Answers:
    462
    Trophy Points:
    710
    Digital Goods:
    29
    #8
    Can you try adding a simple entry just to make sure the API itself is working?

    Like do keyword: "cnn" with the URL of "cnn.com" and see if it finds anything.
     
    digitalpoint, Sep 30, 2013 IP
  9. slowtalkinjones

    slowtalkinjones Member

    Messages:
    29
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    41
    #9
    Nope, no results for cnn/cnn.com either.

    I retested cURL using tools.digitalpoint.com/tracker, and it is able to read that web page.

    Using the cnn link from the web log entered directly into a browser gives the same results as before: a:1:{s:7:"results";s:4:"9999";}

    I don't know how to query google directly to test the API key or I would do that.

    I remade the php page this morning just to make sure, but there's been no change in its output.

    I'm wondering if PHP is installed/configured correctly. I put up phpinfo at nick8c.surfernetwork.com/phpinfo.php, if you would care to take a look. I confess to not knowing much about PHP. The only extensions enabled are php_curl, php_exif, php_http, php_mbstring, php_openssl, and php_sockets. Should I enable other extensions? The server is running PHP version 5.3.13 -- any known problems with that version.

    thanks again
     
    slowtalkinjones, Oct 1, 2013 IP
  10. digitalpoint

    digitalpoint Overlord of no one Staff

    Messages:
    38,333
    Likes Received:
    2,613
    Best Answers:
    462
    Trophy Points:
    710
    Digital Goods:
    29
    #10
    Hmmm... whatever it is appears to be some sort of issue with the server you have the script installed on. PHP seems to be installed properly with the cURL extensions, but for whatever reason it's just not working. I also tried the exact same underlying HTTP request (same keywords/API key, etc.) but to a different server with the script, and it worked fine. So it's definitely narrowed down to something specific to that server.

    One thing that comes to mind is the fact that Google use SSL servers for it's API calls, so if your server has a very old version of cURL installed it might have out of date SSL certificates installed so it's unable to verify the SSL connection and ultimately would fail.

    If you edit the PHP script installed on the server, and change this:

                    curl_setopt_array($ch, array(
                        CURLOPT_RETURNTRANSFER => 1,
            //            CURLINFO_HEADER_OUT => 1
                    ));
    PHP:
    to this:
                    curl_setopt_array($ch, array(
                        CURLOPT_RETURNTRANSFER => 1,
                        CURLOPT_SSL_VERIFYPEER => 0
                    ));
    PHP:
    ...that will tell it to not try and verify the authenticity of the SSL certificate, so if it's an issue of the server having outdated SSL certificates, that should fix it.

    Let me know...
     
    digitalpoint, Oct 1, 2013 IP
  11. slowtalkinjones

    slowtalkinjones Member

    Messages:
    29
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    41
    #11
    Didn't work; gets same results as before. Yesterday I reinstalled cURL, and the latest bundle of certificates along with it. And, using the DOS window, I was able to access your https page, as well as an https page of Google. So the cURL / certificates portion seems ok as an independent element. Unless you've got another idea, I am going to install a newer version of PHP using the Microsoft Web Platform Installer (I think it will install 5.3.5). I wasted a couple hours on the windows.php.net site and the companion sourceforge site trying to find the Windows MSI installer, or any kind of installation instructions.
     
    slowtalkinjones, Oct 1, 2013 IP
  12. digitalpoint

    digitalpoint Overlord of no one Staff

    Messages:
    38,333
    Likes Received:
    2,613
    Best Answers:
    462
    Trophy Points:
    710
    Digital Goods:
    29
    #12
    Well the certificates are unique to each website. So even if your certificates work for this site, they might not for another site (like Google), but if you are using a newish version of cURL, that shouldn't be an issue.

    Can you try making a curl request from the server to : https://www.googleapis.com

    It should simply return "Not Found".

    Maybe there's some sort of weird connectivity issue between your server and Google's servers or maybe a weird DNS resolution issue or something along those lines.
     
    digitalpoint, Oct 1, 2013 IP
  13. slowtalkinjones

    slowtalkinjones Member

    Messages:
    29
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    41
    #13
    It does return "Not Found".

    I just installed PHP v5.4.14 with no change.

    When I installed cURL it came with an associated bundle of certificates, and the instructions are to name that bundle curl-ca-bundle.crt and place it in the Windows System32 folder, where you were to have also placed cURL.exe. So I did that, and assuming that cURL provides whatever certificates are needed. And that proved true when I tested cURL in a command window.

    But now I'm thinking that PHP doesn't use that cURL, it uses an internal dll, and that dll probably doesn't know that cURL.exe even exists. And if that is the case, then PHP must be looking to the server for it's certificate. Is that right? Because this is a development server and we never had a reason to put a certificate on it. I can buy one quickly enough if required. Just let me know.
     
    slowtalkinjones, Oct 2, 2013 IP
  14. digitalpoint

    digitalpoint Overlord of no one Staff

    Messages:
    38,333
    Likes Received:
    2,613
    Best Answers:
    462
    Trophy Points:
    710
    Digital Goods:
    29
    #14
    You definitely don't need to buy an SSL certificate. That's a totally different purpose... cURL is the client, not the server (just like you don't need to buy a certificate as an end user for your browser to use an SSL site).

    PHP *will* use it's own internal cURL library, so installing cURL separately on the server will have no affect unless you are compiling PHP from source. Makes me wonder if your PHP has a non-SSL version of the cURL library. Sometimes they do that since you can't "export" stuff with encryption to certain countries.

    If you run this PHP script:
    <?php
    
        print_r (curl_version());
    PHP:
    what does it output?

    For my servers, it outputs this:
    
    Array(
        [version_number] => 463623
        [age] => 3
        [features] => 1597
        [ssl_version_number] => 0
        [version] => 7.19.7
        [host] => x86_64-suse-linux-gnu
        [ssl_version] => OpenSSL/0.9.8j
        [libz_version] => 1.2.3
        [protocols] => Array
            (
                [0] => tftp
                [1] => ftp
                [2] => telnet
                [3] => dict
                [4] => ldap
                [5] => http
                [6] => file
                [7] => https
                [8] => ftps
            )
    )
    Code (markup):
    Would definitely be an issue if yours isn't supporting the https protocol.
     
    digitalpoint, Oct 2, 2013 IP
  15. slowtalkinjones

    slowtalkinjones Member

    Messages:
    29
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    41
    #15
    Mine looks like this:
    Array (
        [version_number] => 466176
        [age] => 3
        [features] => 3005
        [ssl_version_number] => 0
        [version] => 7.29.0
        [host] => i386-pc-win32
        [ssl_version] => OpenSSL/0.9.8y
        [libz_version] => 1.2.7
        [protocols] => Array
            (
                [0] => dict
                [1] => file
                [2] => ftp
                [3] => ftps
                [4] => gopher
                [5] => http
                [6] => https
                [7] => imap
                [8] => imaps
                [9] => ldap
                [10] => pop3
                [11] => pop3s
                [12] => rtsp
                [13] => scp
                [14] => sftp
                [15] => smtp
                [16] => smtps
                [17] => telnet
                [18] => tftp
            )
        ) 
    PHP:
     
    slowtalkinjones, Oct 3, 2013 IP
  16. digitalpoint

    digitalpoint Overlord of no one Staff

    Messages:
    38,333
    Likes Received:
    2,613
    Best Answers:
    462
    Trophy Points:
    710
    Digital Goods:
    29
    #16
    Honestly, really have no idea. Do you by chance have access to a different server you could test it from?
     
    digitalpoint, Oct 3, 2013 IP
  17. slowtalkinjones

    slowtalkinjones Member

    Messages:
    29
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    41
    #17
    Thanks for all your help. Finally got it working, but with issues. I reinstalled PHP using the Windows Platform Installer, and made sure the script had "CURLOPT_SSL_VERIFYPEER => 0". It also now works on another server (www ....., instead of nick8c....). Go figure.

    But the Tracker page does not report results correctly. The first entry of Group "test Surfer" is for keywords "Christian radio online streaming", and URL "www.surfernetwork.com/html/fp/streaming_radio.asp". If you just open a Google search page and run the query on those keywords, that page comes up as result #46. On the Tracker page, if you click on that single item, it runs the query and opens the black results window showing the fourth query results page, with the target page at #46 (depth of search is set to 50).

    But, when you retire the popup results box, the page shows N/A for that item, even after refresh. That is the same after clicking "Check All Rankings". However, it does show results for "cnn, cnn . com" (you actually need to use cnn . com or www . cnn . com, rather than http : // cnn . com), and it shows results for keywords "Internet radio broadcasting services" which gets a #1 position. Makes me suspect that the Tracker page gets confused if the results are not on the first results page (or something like that - maybe the indexing is off by 1).
     
    slowtalkinjones, Oct 8, 2013 IP
  18. digitalpoint

    digitalpoint Overlord of no one Staff

    Messages:
    38,333
    Likes Received:
    2,613
    Best Answers:
    462
    Trophy Points:
    710
    Digital Goods:
    29
    #18
    What if you set it deeper than 50? Something being 46 for you, could very easily be in the 50s for someone else (like the script) because of how Google does personalized results. No two people are going to see results exactly the same.
     
    digitalpoint, Oct 8, 2013 IP
  19. slowtalkinjones

    slowtalkinjones Member

    Messages:
    29
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    41
    #19
    It's true about personalization, but running that particular keyword by clicking on it in Tracker showed the result as #46. After doing that, the Tracker page still shows Rank as N/A.
     
    slowtalkinjones, Oct 9, 2013 IP
  20. digitalpoint

    digitalpoint Overlord of no one Staff

    Messages:
    38,333
    Likes Received:
    2,613
    Best Answers:
    462
    Trophy Points:
    710
    Digital Goods:
    29
    #20
    So it finds it okay, just doesn't record it? I've never heard if any situation where that happens. Not even sure how that could happen since they are one and the same internal method.
     
    digitalpoint, Oct 9, 2013 IP