Yesterday I strted getting emails aboutn ads not showing. When I tryed to get to the main DP site, I couldn't. I can't get to ads.digital point.com either. That means the tracking pixel wasn't loading. Ads were still showing on my site. I pulled them until I get this figured out. I've been running coop ads since last February. I am (was) using the ASP version - latest one. No voilation of terms - all my sites are vertical shopping directories. I host them all myself from my house in a windows server; same IP, different host headers. Exchanged a couple of private messages with Shawn and he suggested I post here. How can I tell if my IP is banned? If it is, how do I get it unbanned? Sean mentioned something about caching - as far as I know the 2.13 port to ASP fixed that, and that was the version I was using. Any suggestions? Thanks-
192.168.254.40 www.ishophq.com is one, but all my sites comes off that IP. I've commented out the code that calls the ads for the time being - do I need to turn it back on? Thanks,
192.168.*.* is an internal (non-routable) IP address. Would need to know the public IP address. But www.ishophq.com resolves to 24.173.137.230, so I'll assume that's it. I am showing the system automatically blocked that IP address for making excessive requests for new ads (not caching them). *Why* the server is not caching them, I have no idea. The ASP versions are not supported (not written by me), so you probably would need to contact whoever the author of the code is to try and figure out why.
Oops sorry.... 24.173.137.230 is correct. I'll have to look at the code then, though I've been running the code for quite a while. Too, since the Yahoo fiasco, my traffic is less than one half what it was at it's peak, so I'm surprised I had enough traffic to trip anything. How do I get unbanned to see if my corrected code works?
<% dim ad_params 'Set num_ads to the number of ads you want to display. 'Set ad_separator to the separator you want between ads. const num_ads = 5 const ad_separator = " | " const ad_file_name = "ad_network_ads_213.txt" Function ad_network() dim ad_ids() dim ad_type, ad_url, ad_file, AllLinks, NewTextLinks, objTextStreamR, objTextStreamW, newlink, spParam, LinksDate, i, NewTextLink, attempt, r, j dim objFSO, fso, stream, displayAds(), data, fileWritable Randomize() on error resume next Const root_path="/logs/" 'the (writable) path to ad_network_ads.txt ad_type = "link" '"link" for text link | "text" for text banner | "" (empty) for graphical banner ad_url = "http://ads.digitalpoint.com/network.php?c=" & Request.ServerVariables("SERVER_NAME") & "&type=" & ad_type ad_file = Server.MapPath("/") & root_path & ad_file_name 'it must be a path with write privileges Set objFSO = Server.CreateObject("Scripting.FileSystemObject") Set objTextStreamR = objFSO.OpenTextFile(ad_file,1,true) set fileWritable = objFSO.GetFile(ad_file) if (fileWritable.Attributes and 1) = 1 then Response.Write "You must set the ad network .txt file to be writable." exit function end if If objTextStreamR.AtEndOfStream Then 'First Creation of cache file (5 ads) NewTextLinks = GetNewLink(ad_url) if NewTextLinks <> "" then NewTextLinks = "<ad_break>" & NewTextLinks Application.Lock 'prevents other processes from changing file while writing set fso = server.createobject("Scripting.FileSystemObject") set stream = fso.opentextfile(ad_file,2,true) stream.write ad_params & NewTextLinks stream.close set fso=nothing Application.UnLock spParam = split(ad_params,"|",-1,vbTextCompare) AllLinks = split(NewTextLinks,"<ad_break>") Else AllLinks = split(objTextStreamR.ReadAll,"<ad_break>") if instr(1,AllLinks(0),"|",vbTextCompare) = 0 then newlink = GetNewLink(ad_url) spParam = split(ad_params,"|",-1,vbTextCompare) spParam(0) = AllLinks(0) AllLinks(0) = ad_params else spParam = split(AllLinks(0),"|",-1,vbTextCompare) end if if IsDate(spParam(0)) then LinksDate = cdate(spParam(0)) else LinksDate = Now() end if If (UBound(AllLinks) <= spParam(3) + 1 and clng(datediff("s",LinksDate,now())) > clng(spParam(5))) or clng(datediff("s",LinksDate,now())) > clng(spParam(4)) Then NewTextLink = GetNewLink(ad_url) if NewTextLink <> "" then redim preserve AllLinks(UBound(AllLinks) + 1) AllLinks(0) = ad_params AllLinks(ubound(AllLinks)) = NewTextLink end if If ubound(AllLinks) > spParam(3) then for i = 1 to spParam(3) AllLinks(i) = AllLinks(i + 1) next redim preserve AllLinks(spParam(3)) End If AllLinks(0) = Now() & mid(AllLinks(0),instr(1,AllLinks(0),"|",vbTextCompare)) data = join(AllLinks, "<ad_break>") Application.Lock 'prevents other processes from changing file while writing set fso = server.createobject("Scripting.FileSystemObject") set stream = fso.opentextfile(ad_file,2,true) stream.write data stream.close Application.UnLock set fso=nothing End If End If 'get 5 random non-duplicate ads dim id_string, c_safety, temp_ad i = 0 redim preserve displayAds(num_ads - 1) redim preserve ad_ids(num_ads - 1) c_safety = 0 id_string = "-" do while i < num_ads and i < UBound(AllLinks) and c_safety < 100 r = int(Rnd() * (UBound(AllLinks)) + 1) temp_ad = split(AllLinks(r), "<id>") 'If this ad has NOT been selected before its id will NOT be in id_string. 'When searching for id add a "-"'s to make sure we do not match partial numbers. if not instr(1, id_string, "-" & temp_ad(1) & "-") > 0 then id_string = id_string & temp_ad(1) & "-" if Request.ServerVariables("REMOTE_ADDR") = spParam(1) or Request.ServerVariables("SERVER_ADDR") = Request.ServerVariables("REMOTE_ADDR") then displayAds(i) = Replace(temp_ad(0),""" />",""" class=""" & spParam(2) & """ />") else displayAds(i) = temp_ad(0) end if i = i + 1 end if c_safety = c_safety + 1 loop 'Remove trailing "-" from id_string if len(id_string) > 0 then id_string = left(id_string, len(id_string) - 1) dim printAds printAds = join(displayAds, ad_separator) Response.Write "<img src=""http://ads.digitalpoint.com/t" & id_string & ".gif"" width=""1"" height=""1"">" 'ad_network = displayAds 'Print yourself Response.Write printAds 'Print all at once end function '----------------------------------------------------------------------------------- Private Function GetHTTPText(File) if Application("LastCommsAttempt") = "" then Application("LastCommsAttempt") = now else if datediff("s",Application("LastCommsAttempt"),now()) > 4 then Application("LastCommsAttempt") = now else exit function end if end if 'on error resume next Dim wHTTP Set wHTTP = server.CreateObject("Microsoft.XMLHTTP") 'whttp.settimeouts 2000,30000,30000,30000 wHTTP.Open "GET", File, false wHTTP.Send 'If wHTTP.WaitForResponse(5) = True Then GetHTTPText = wHTTP.ResponseText 'End If Set wHTTP=nothing end function '----------------------------------------------------------------------------------- Private Function GetNewLink(File) dim ht, spLink ht = GetHTTPText(File) if ht <> "" then if instr(1,ht,"<ad_param>",vbTextCompare) > 0 then spLink = split(ht,"<ad_param>",-1,vbTextCompare) ad_params = now() & "|216.9.35.51|" & spLink(0) GetNewLink = spLink(1) else Application("LastCommsAttempt") = dateadd("s",100,now) ad_params = now() & "|216.9.35.51|abcdefgh|400|900|4" end if else if datediff("s",Application("LastCommsAttempt"),now()) > 5 then Application("LastCommsAttempt") = dateadd("s",100,now) end if ad_params = now() & "|216.9.35.51|abcdefgh|400|900|4" end if end function '----------------------------------------------------------------------------------- %>
Hmmmm... looks like it should be okay. Can you check your .txt file to make sure ads are being cached?
Hi Shawn- I really appreciate all your help with this..... I looked at several of the .txt files and they are all dated 7/3/2005, which was the day the ban seemed to take place. Most recent time stamp I could find was 21:24, so it looks as though the ban took place just before 9:30 EST. I'm also running coop on several sites out on commercial companies (ex: www.sfreader.com). These sites are running the same version of the ASP as the ones I host myself, and they are still validating and serving ads.
Thanks again for the help- I'll reactive one site at a time, starting with my busiest, and see what happens I appreciate all your time! UPDATE----> Took out my code comments to reactivate, ads are showing on iShopHQ, site validated with same weight as previous. Any way I can check to make sure I'm caching so I won't get banned again? ANOTHER UPDATE---> Dug through the code and saw that when checking cache it was going to the DP server every no more than once every 4 seconds. What I think happened was since I'm a virtual host with all my sites coming off the same IP, it might as well have been continuous. So I changed it to only check the DP server every 4 hours. So max I culd hit the DP server is 36 times (once for each of my 36 sites sites) every 4 hours. Hopefully that will keep me off the ban list. Thanks-