Forum Moderators: phranque
keyplyr has suggested this will block them
RewriteCond %{HTTP_USER_AGENT} ^Blocked\ by\ Norton [NC,OR]
And if so, i'm wondering if this will redirect them to the page mentioned above
RewriteRule .* /pageiwanttosendthemto.htm [L]
And anything else I should know.
I'd suggest making the rule a little more specific by rewriting only .htm pages -- except for your custom error documents (if any).
RewriteCond %{HTTP_USER_AGENT} ^Blocked\ by\ Norton [NC]
RewriteCond %{REQUEST_URI} !^(40[34]¦410)\.htm$
RewriteRule \.htm$ /pageiwanttosendthemto.htm [L]
As an alternative, consider using SSI or PHP to include a message at the top of your pages for visitors with the blocker enabled. A few may click on it and learn something, and you won't be driving away visitors.
This method is much more user-friendly, educational rather than confrontational, and on commercial sites has the distinct advantage of not causing a potential loss of sales and referrals.
Sometimes it works, too; On a "hobby site" I administer for a club I'm a member of, I used it to "save" several other members from an adware package with a user-agent name that resembles "AmusingInternetProduce". Nobody got mad and left; If they had the time and the inclination, they clicked through to the detailed explanation and removal instructions. If not, they did what they came to the site to do. Most came back later and clicked through and got rid of it.
The customer is always right, even when the customer is wrong, or not technically-competent, or even foolish. And just because (technically) we *can* do a thing, doesn't make it the right thing to do.
IMHO, YMMV, etc.
Jim
This method is much more user-friendly, educational rather than confrontational, and on commercial sites has the distinct advantage of not causing a potential loss of sales and referrals.For some of us, these ads, including adsense, are the only way our sites can survive. Our entire income is derived from the exact stuff being blocked. I would consider the price of a lost visitor that is unknowingly prevented from viewing my site as intended by the illegal actions of a third party to be less than the benefit gained by educating that lost visitor. And if the visitor is knowingly doing it, there is another page I would rather send them to.;) This is not for all sites, definitely. I have other sites that I would consider myself to be in breach of contract if I were to block NIScammers on.
RewriteCond %{REQUEST_URI}!^(40[34]¦410)\.htm$
Anyway, what jdMorgan says makes so much sense. If you turn a customer away that would otherwise come back without NIS or with NIS ad-blocking turned off, you lose money twice. Or as we Germans say (but never obey): the customer is king.
NIS has caused me a lot of trouble, e.g. with its referrer blocking preventing me to post in certain forums. On the other hand, once I learned how to configure it properly and how to excempt certain sites from this referrer blocking, I actually found it very useful. For example, when I'm reverse engineering my competitors' rankings in G, I don't have to worry about them seeing the search phrases was using when I click their sites.
requested page /just+block+my+ip+and+then+start+blocking+all+other+ips+because+ you+never+know+who+is+at+the+other+end+of+the+wire+pulling+the+string s+but+lets+skip+that+for+now+and+_get+back+to+some+serious+blockingROTFLMAO.
Hanu
217.***.120 - - [19/May/2004:05:56:24 -0400] "GET / HTTP/1.1" 200 11999 "-" "-"
2 questions; Did you see the adsense, or the banner at the bottom. Have you altered your UA or is that the standard install of Norton?
Oh yeah, does the dollar sign in the code above include html as well as htm? I'm guessing it does, but if not, that could be why you got through to index.html
It would seem so. I changed the name of the page to blockedbynorton.html (and the part of the code in .htaccess to reflect that) and now it works. I like this. They can come in through my homepage. Then when they go somewhere else get redirected to a nicely written page explaining what happened and then go to the same page they were on, but named .html (or something else).
added-Anyone with NIS know the steps to disable ad-blocking so I can put that on the redirection page. And how to change the UA if possible.
RewriteCond %{HTTP_USER_AGENT} ^Blocked\ by\ Norton [NC]
RewriteCond %{REQUEST_URI} !^/(40[34]¦410¦alternate_page)\.htm$
RewriteRule (\.html?$¦^$) /alternate_page.htm [L]
RewriteCond %{HTTP_REFERER} ^-?$
RewriteCond %{HTTP_USER_AGENT} ^-?$
RewriteCond %{REQUEST_URI} !^/(40[34]¦410¦alternate_page)\.htm$
RewriteRule (\.html?$¦^$) /alternate_page.htm [L]
These can be combined, if you wish:
RewriteCond %{HTTP_REFERER}<>%{HTTP_USER_AGENT} ^-?<>-?$ [OR]
RewriteCond %{HTTP_USER_AGENT} ^Blocked\ by\ Norton [NC]
RewriteCond %{REQUEST_URI} !^/(40[34]¦410¦alternate_page)\.htm$
RewriteRule (\.html?$¦^$) /alternate_page.htm [L]
You must edit the code to replace all broken pipe "¦" characters with solid pipes before use.
For the meaning of the regular expressions used in mod_rewrite, see this regular expressions tutorial [etext.lib.virginia.edu].
Note that the "<>" character string used in the var1<>var2 construct shown above, while implying concatenation, has no special meaning in mod_rewrite; this is simply a unique string used to define the boundary between the two variables in the combined pattern, which would otherwise be ambiguous.
Jim
By the way it seems that by default the UA string is not altered by NIS, only if the user changes it.
Check this out:
[search.symantec.com...]From that link at Symantec:
Web servers often request browser (user-agent) information from your computer.Funny, I had thought it was a suggested header that the browser SHOULD supply as a common courtesy.
HTTP 1.1 RFC 2616, see Sections 5.3 and 14.43
ftp://ftp.isi.edu/in-notes/rfc2616.txt
2 questions; Did you see the adsense, or the banner at the bottom. Have you altered your UA or is that the standard install of Norton?
I did see the adsense. I didn't see the banner. This is exactly what I want. I don't mind adsense but I do mind banners.
In a standard install, the "Enable Browser Privacy" is on, blocking UA and Referrer.
In addition to visitors who intentionally installed NIS and set it to block referrrers, there are thousands of people behind corporate and ISP caching proxies -- all of which will drop the referrer if they fetch a page into cache when the visitors requests it.
Referrer-based access control is simple but unreliable. Other methods are more complex and involve a lot more development and testing. Maybe you could set up your server to proxy AdWords files, calling a script for each request that logs the requestor's IP address. (I have no idea if Google would be "OK" with proxying Adwords requests, this is just a technical idea.) For any IP that requests a second page of your site before requesting any Adwords, redirect to a page that tells them that they're blocking your revenue. This would require that you keep a database of IP addresses which recently accessed your pages, and provide for flushing it out periodically.
You'd also have to provide for users of ISPs like AOL, who seem to have a different IP address for each and every page request (because of the aforementioned caching proxies). Maybe you could use cookies or session IDs instead of IP addresses for this. But then some users block cookies too, so sessions it is. So now, you'll need to provide friendly session-less URLs to SE spiders when they call. Anyway, the whole thing snowballs quickly into a fairly respectable project. In this light, even loose referrer-based access control looks OK as a quick-fix if it catches some useful number of problems.
Jim
Yes, it would -- and cut-n-paste from e-mail, JS-scripted calls for images, and a lot of other access methods as well... It is a mess. So, we have to choose between more complicated and/or expensive solutions and the imperfect-but-simple not-blank-but-incorrect-referrer-blocking for simple image access control. However, that still leaves us with the problem of AdWord and other creatives being blocked on sites that rely on them for revenue. For that, it seems to me that some sort or scripted, sessions-based solution will be the simplest.
Jim
RewriteCond %{HTTP_REFERER} ^-?$
RewriteCond %{HTTP_USER_AGENT} ^-?$
RewriteCond %{REQUEST_URI}!^/(40[34]¦410¦alternate_page)\.htm$
RewriteRule (\.html?$¦^$) /alternate_page.htm [L]