Difference between revisions of "Rip Prevention Mod"

From TNG_Wiki
Jump to navigation Jump to search
 
(51 intermediate revisions by 13 users not shown)
Line 1: Line 1:
{{restricted}}{{V12_cust_text}}
+
{{restricted}}{{V12_cust_text}}{{TNGmod
{{TNGmod
+
| mod_name        = {{PAGENAME}}
| mod_name        = Rip Prevention Mod
 
 
| mod_summary    = Prevents rapid access to site
 
| mod_summary    = Prevents rapid access to site
 
| mod_validation  = V8.1.2a is XHTML compliant.[[Image:Valid-xhtml10.png|44px]]  
 
| mod_validation  = V8.1.2a is XHTML compliant.[[Image:Valid-xhtml10.png|44px]]  
| mod_last_update = 8 Nov 2020
+
| mod_last_update = 15 Nov 2023
| download_link  = [http://www.wiese-schneckloth.com/genealogy/ccount/click.php?id=21&user={{#replace:{{CURRENTLOGGEDUSER}}}}&page={{PAGENAMEE}} Rip_prevention_v13.0.0.1]{{Tv130}}<hr />[http://www.wiese-schneckloth.com/genealogy/ccount/click.php?id=14&user={{#replace:{{CURRENTLOGGEDUSER}}}}&page={{PAGENAMEE}} Rip_prevention_v12.0.0.0e]{{Tv120}}<hr />{{Tv1102}}[http://www.wiese-schneckloth.com/genealogy/ccount/click.php?id=4&user={{#replace:{{CURRENTLOGGEDUSER}}}}&page={{PAGENAMEE}} Rip_prevention_v11.0.2.0b]<hr />{{Tv1010}}[http://www.wiese-schneckloth.com/genealogy/ccount/click.php?id=5&user={{#replace:{{CURRENTLOGGEDUSER}}}}&page={{PAGENAMEE}} Rip_prevention_v10.1.0.0b]<hr />{{Tv80}}[[Media:rip_prevention_v8.1.2a.zip|rip_prevention_v8.1.2a]] <hr />{{Tv70}} [[Media:rip_prevention_v1.4.zip|rip_prevention_v1.4]]  
+
| download_link  = For{{Tv140}}<br />[http://www.wiese-schneckloth.com/genealogy/ccount/click.php?id=41&user={{#replace:{{CURRENTLOGGEDUSER}}}}&page={{PAGENAMEE}} Rip_prevention_v14.0.0.3]<hr style="clear: both;"/>For{{Tv130}}[http://www.wiese-schneckloth.com/genealogy/ccount/click.php?id=28&user={{#replace:{{CURRENTLOGGEDUSER}}}}&page={{PAGENAMEE}} Rip_prevention_v13.0.0.2b]<hr style="clear: both;"/>For{{Tv120}}[http://www.wiese-schneckloth.com/genealogy/ccount/click.php?id=14&user={{#replace:{{CURRENTLOGGEDUSER}}}}&page={{PAGENAMEE}} Rip_prevention_v12.0.0.0e]<hr style="clear: both;"/>For{{Tv1102}}[http://www.wiese-schneckloth.com/genealogy/ccount/click.php?id=4&user={{#replace:{{CURRENTLOGGEDUSER}}}}&page={{PAGENAMEE}} Rip_prevention_v11.0.2.0b]<hr style="clear: both;"/>For{{Tv1010}}[http://www.wiese-schneckloth.com/genealogy/ccount/click.php?id=5&user={{#replace:{{CURRENTLOGGEDUSER}}}}&page={{PAGENAMEE}} Rip_prevention_v10.1.0.0b]<hr style="clear: both;"/>For{{Tv80}}<br />[[Media:rip_prevention_v8.1.2a.zip|rip_prevention_v8.1.2a]]<!-- TNG7 version removed from this list as file does not exist on Wiki  --><!-- <hr style="clear: both;"/>For{{Tv70}}<br />[[Media:rip_prevention_v1.4.zip|rip_prevention_v1.4]] -->
 
| download_stats  = [http://www.wiese-schneckloth.com/genealogy/ccount/index.php?action=stats&groupid=1 See download statistics]
 
| download_stats  = [http://www.wiese-schneckloth.com/genealogy/ccount/index.php?action=stats&groupid=1 See download statistics]
 
| mod_author      = Brian McFadyen<br />Brent Hemphill
 
| mod_author      = Brian McFadyen<br />Brent Hemphill
| mod_url        = [[Rip Prevention Mod]] (This page)
+
| mod_url        = [[{{PAGENAME}}]] (This page)
| mod_support    = [http://tng.community/ TNG Community Forums]
+
| mod_support    = [https://tng.community/index.php?/forums/forum/21-addons/ TNG Community Forums]
| mod_contact    =
+
| mod_contact    = [https://tng.community/index.php?/forums/forum/21-addons/ TNG Community Forums]
| mod_version    = 13.0.0.1
+
| mod_version    = 14.0.0.3
 
| use_mod_manager = Yes
 
| use_mod_manager = Yes
 
| manual_install  = No
 
| manual_install  = No
 
| min_TNG_ver    = 7.0.0
 
| min_TNG_ver    = 7.0.0
| max_TNG_ver    = 13.0.1
+
| max_TNG_ver    = 14.0.0
 
| TNG_file_list  = tng_begin.php<br />admin.php<br />admin_genconfig.php<br />admin_leftmenu.php<br />admin_backup.php<br />admin_optimize.php<br />admin_restore.php<br />admin_utilities.php<br />customconfig.php
 
| TNG_file_list  = tng_begin.php<br />admin.php<br />admin_genconfig.php<br />admin_leftmenu.php<br />admin_backup.php<br />admin_optimize.php<br />admin_restore.php<br />admin_utilities.php<br />customconfig.php
 
| related_mods    = [[Rip Challenge Mod]]
 
| related_mods    = [[Rip Challenge Mod]]
 
| notes          = May require [[Rip_Prevention_Mod#Customizations|customization]]
 
| notes          = May require [[Rip_Prevention_Mod#Customizations|customization]]
}}
+
}}{| style="margin-right:0.5 em;" align="right"  
{| style="margin-right:0.5 em;" align="right"  
 
 
| __TOC__
 
| __TOC__
 
|}
 
|}
 
 
 
 
== Purpose of the mod ==
 
== Purpose of the mod ==
 
 
This TNG modification includes several features:
 
This TNG modification includes several features:
  
Line 33: Line 27:
 
::It can help deter some of the automated processes that simply rip (copy) our sites for potential commercial gain.  It monitors the time interval between visitor accesses.  If the accesses are rapid and repeated, a warning is issued.  If the accesses continue rapid and repeatedly, the visitor is temporarily banned and an explanation page is displayed.  Warnings and bans are disabled for administrators.
 
::It can help deter some of the automated processes that simply rip (copy) our sites for potential commercial gain.  It monitors the time interval between visitor accesses.  If the accesses are rapid and repeated, a warning is issued.  If the accesses continue rapid and repeatedly, the visitor is temporarily banned and an explanation page is displayed.  Warnings and bans are disabled for administrators.
  
::To view an example of this, you may [http://genealogy.mcfadyen.ca access my site] and simply hit the refresh quickly.  A few rapid accesses will result in a warning page.  Simply wait a few seconds and operation will return to normal.  Repeated rapid access will result in a 60 second ban where an explanation page is displayed.
+
::A few rapid accesses will result in a warning page.  Simply wait a few seconds and operation will return to normal.  Repeated rapid access will result in a 60 second ban where an explanation page is displayed.
  
::To deter those slow automated programs that scrape your site, you may optionally add a [[Rip Challenge Mod|Rip Prevention Captcha challenge]].  If added, you may configure the number of visits within a specified time that you will be allowed before a graphical challenge is presented to confirm the visitor is human and not an automated program. [http://genealogy.mcfadyen.ca/rip_challenge.php Check here to see an example of the captcha page].
+
::To deter those slow automated programs that scrape your site, you may optionally add a [[Rip Challenge Mod|Rip Prevention Captcha challenge]].  If added, you may configure the number of visits within a specified time that you will be allowed before a graphical challenge is presented to confirm the visitor is human and not an automated program.
  
 
* Site Access Statistics Page
 
* Site Access Statistics Page
::In addition to the warning and ban pages, a simple access stats page is available on the admin page.  The left banner will include an entry (in English) "Show Access" which will display the current stored access information.  I have sorted it by Bans, Warnings, Total fast page access, and Total accesses.  A button is included to optionally sort the information using alternate columns. A view only version of the access stats may be viewed on my site as well.  The delete functions are disabled since you are not logged in.  [http://genealogy.mcfadyen.ca/admin/showaccess.php?pass=view Check it here]
+
::In addition to the warning and ban pages, a simple access stats page is available on the admin page.  The left banner will include an entry (in English) "Show Access" which will display the current stored access information.  I have sorted it by Bans, Warnings, Total fast visits, and Total accesses.  A button is included to optionally sort the information using alternate columns.
 
* Custom Message to browsing IP address
 
* Custom Message to browsing IP address
 
::Create a custom message to specific IP addresses that are browsing your site.  This feature allows selection of the IP/Host that is viewing your site, adding a custom message, and monitoring whether they have viewed it or not.  The custom message will be displayed for a selectable (1-9) page views, then disappear.  The number of page views left will be displayed in the site statistics page.  To view this in action, check the link above to the statistics page, sort by time, and your address should be at the top.  Since you are not logged in as administrator, the messaging system will only work for your originating IP address/hostname. A default message (max 1000 characters) is included, but may be customized.
 
::Create a custom message to specific IP addresses that are browsing your site.  This feature allows selection of the IP/Host that is viewing your site, adding a custom message, and monitoring whether they have viewed it or not.  The custom message will be displayed for a selectable (1-9) page views, then disappear.  The number of page views left will be displayed in the site statistics page.  To view this in action, check the link above to the statistics page, sort by time, and your address should be at the top.  Since you are not logged in as administrator, the messaging system will only work for your originating IP address/hostname. A default message (max 1000 characters) is included, but may be customized.
Line 45: Line 39:
  
 
== Developer ==
 
== Developer ==
 
 
The Rip Prevention Mod was developed by Brian McFadyen.<br />
 
The Rip Prevention Mod was developed by Brian McFadyen.<br />
 
The Rip Prevention Mod was updated for MySQLi support by Brent Hemphill.
 
The Rip Prevention Mod was updated for MySQLi support by Brent Hemphill.
 
Table deletion, good indexer list, forcing admin only access, and some messaging updates by Steven Davis.
 
Table deletion, good indexer list, forcing admin only access, and some messaging updates by Steven Davis.
 
French text provided by Katryne Chauvigné-Bourlaud.
 
French text provided by Katryne Chauvigné-Bourlaud.
 +
French text provided by Ingrid Schuster.
  
 +
==Requirements==
 +
* A working TNG installation.
 +
* A backup of all affected files (see the list in the summary in the upper right corner of the page)
 +
* An installed current version of the [[Mod Manager]].
 +
* This mod requires that your admin folder be writeable.
  
 
==Revision History==
 
==Revision History==
{| border="1" cellspacing="5" cellpadding="2" width="100%" class="wikitable"
+
{| border="0" cellspacing="1" cellpadding="2" class="wikitable"
 
|-
 
|-
! Version
+
! Mod Version
 +
! TNG Version
 
! Date
 
! Date
 
! Contents
 
! Contents
|-
+
 
 +
|- style="vertical-align:top;"
 +
| 14.0.0.3
 +
| 14.0
 +
| style="white-space: nowrap;"|15 Nov 2023
 +
| update mod for PHP 8.2, add an option for host/IP list to ignore fast hits from.
 +
 
 +
|- style="vertical-align:top;"
 +
| 14.0.0.2c
 +
| 14.0
 +
| style="white-space: nowrap;"|29 Dec 2022
 +
| update mod for TNG 14.
 +
 
 +
|- style="vertical-align:top;"
 +
| 13.0.0.2b
 +
| 13.0
 +
| style="white-space: nowrap;"|02 Jul 2021
 +
| update mod to fix a parse error.
 +
 
 +
|- style="vertical-align:top;"
 +
| 13.0.0.2a
 +
| 13.0
 +
| style="white-space: nowrap;"|29 Jun 2021
 +
| update mod to fix a parse error, a few hidden characters in text strings, and fix some HTML validation issues.
 +
 
 +
|- style="vertical-align:top;"
 +
| 13.0.0.2
 +
| 13.0
 +
| style="white-space: nowrap;"|27 Jun 2021
 +
| update mod to allow paging of the Show Access page.  Added additional bots to the consolidation list.  German text thanks to Ingrid Schuster.
 +
 
 +
|- style="vertical-align:top;"
 
| 13.0.0.1
 
| 13.0.0.1
| 8 November 2020
+
| 13.0
 +
| style="white-space: nowrap;"|08 Nov 2020
 
| update mod for TNG 13.  Added the ability to delete the table, fix issues with the messaging system, updated the good indexer list, updated to HTML5 validation, and make the text customizable language strings.  Thanks to Steven Davis.  French text thanks to Katryne Chauvigné-Bourlaud.
 
| update mod for TNG 13.  Added the ability to delete the table, fix issues with the messaging system, updated the good indexer list, updated to HTML5 validation, and make the text customizable language strings.  Thanks to Steven Davis.  French text thanks to Katryne Chauvigné-Bourlaud.
|-
+
 
 +
|- style="vertical-align:top;"
 
| 12.0.0.0e
 
| 12.0.0.0e
| 9 December 2019
+
| 12.0
 +
| style="white-space: nowrap;"|09 Dec 2019
 
| update mod to fix some PHP 7.4 notices.  Also updated the ban and warning screens to HTML5 stylizing thanks to Randal Suire.
 
| update mod to fix some PHP 7.4 notices.  Also updated the ban and warning screens to HTML5 stylizing thanks to Randal Suire.
|-
+
 
 +
|- style="vertical-align:top;"
 
| 12.0.0.0d
 
| 12.0.0.0d
| 22 November 2018
+
| 12.0
 +
| style="white-space: nowrap;"|22 Nov 2018
 
| update mod to fix an issue with IPv6.
 
| update mod to fix an issue with IPv6.
|-
+
 
| 12.0.0.0b<br />11.0.2.0b<br />10.1.0.0b
+
|- style="vertical-align:top;"
| 14 September 2018
+
| 12.0.0.0b
 +
| 12.0
 +
| style="white-space: nowrap;"|14 Sep 2018
 +
| update mod to fix an issue with the Show Access being unreadable in Templates 9, 13, and 14.  Also fixed a possible issue with the Click Counter II Email Notify mod.
 +
 
 +
|- style="vertical-align:top;"
 +
| 11.0.2.0b
 +
| 11.0.2
 +
| style="white-space: nowrap;"|14 Sep 2018
 +
| update mod to fix an issue with the Show Access being unreadable in Templates 9, 13, and 14.  Also fixed a possible issue with the Click Counter II Email Notify mod.
 +
 
 +
|- style="vertical-align:top;"
 +
| 10.1.0.0b
 +
| 10.1
 +
| style="white-space: nowrap;"|14 Sep 2018
 
| update mod to fix an issue with the Show Access being unreadable in Templates 9, 13, and 14.  Also fixed a possible issue with the Click Counter II Email Notify mod.
 
| update mod to fix an issue with the Show Access being unreadable in Templates 9, 13, and 14.  Also fixed a possible issue with the Click Counter II Email Notify mod.
|-
+
 
 +
|- style="vertical-align:top;"
 
| 12.0.0.0a
 
| 12.0.0.0a
| 4 September 2018
+
| 12.0
 +
| style="white-space: nowrap;"|04 Sep 2018
 
| update mod to add option for Rip Challenge Mod to only show once per session. Also added notes to options about hits being counted multiple times in instances of redirection.
 
| update mod to add option for Rip Challenge Mod to only show once per session. Also added notes to options about hits being counted multiple times in instances of redirection.
|-
+
 
 +
|- style="vertical-align:top;"
 +
| 11.0.2
 
| 11.0.2
 
| 11.0.2
| 8 June 2017
+
| style="white-space: nowrap;"|08 Jun 2017
 
| update mod to be MySQLi compatible. Also fixed some other deprecated functions that were used. Added user to the table. Added the functionality for a renamed extensions folder.
 
| update mod to be MySQLi compatible. Also fixed some other deprecated functions that were used. Added user to the table. Added the functionality for a renamed extensions folder.
|-
+
 
 +
|- style="vertical-align:top;"
 +
| 10.1
 
| 10.1
 
| 10.1
| 8 June 2017
+
| style="white-space: nowrap;"|08 Jun 2017
 
| update mod to be MySQLi compatible. Also fixed some other deprecated functions that were used. Added user to the table.
 
| update mod to be MySQLi compatible. Also fixed some other deprecated functions that were used. Added user to the table.
|-
+
 
 +
|- style="vertical-align:top;"
 
| 8.1.2a
 
| 8.1.2a
| 1 April 2011
+
| 8.1
 +
| style="white-space: nowrap;"|01 Apr 2011
 
| update mod to be XHTML compliant provided by Alan Craxford who made rip_ban.html and rip_warning.html XHTML compliant
 
| update mod to be XHTML compliant provided by Alan Craxford who made rip_ban.html and rip_warning.html XHTML compliant
|-
+
 
 +
|- style="vertical-align:top;"
 
| 8.1.2
 
| 8.1.2
| 30 May 2010
+
| 8.1
| [[Media:rip_prevention_v8.1.2.zip|rip_prevention_v8.1.2]] contains More corrections. Looks ok now
+
| style="white-space: nowrap;"|30 May 2010
|-
+
| [[Media:Rip prevention v8.1.2.zip|rip_prevention_v8.1.2]] contains More corrections. Looks ok now
 +
 
 +
|- style="vertical-align:top;"
 
| 8.1.1
 
| 8.1.1
| 30 May 2011
+
| 8.1
 +
| style="white-space: nowrap;"|30 May 2011
 
| Updates to Rip Package, fixed for V8.0 and new file structure
 
| Updates to Rip Package, fixed for V8.0 and new file structure
|-
+
 
| v8.1.0  
+
|- style="vertical-align:top;"
| May 28, 2010  
+
| 8.1.0  
 +
| 8.1
 +
| style="white-space: nowrap;"|28 May 2010  
 
| updates for TNG V8
 
| updates for TNG V8
|-
+
 
| v1.4  
+
|- style="vertical-align:top;"
| Jun, 2009  
+
| 1.4
 +
| 7.0
 +
| style="white-space: nowrap;"|Jun 2009  
 
| misc updates
 
| misc updates
|-
+
 
| v1.2  
+
|- style="vertical-align:top;"
| Jun 1, 2009  
+
| 1.2  
 +
| 7.0
 +
| style="white-space: nowrap;"|01 Jun 2009  
 
| updated with missing genlib modification to support Messaging to visitors
 
| updated with missing genlib modification to support Messaging to visitors
|-
+
 
| v1.1  
+
|- style="vertical-align:top;"
| May 31, 2009  
+
| 1.1  
 +
| 7.0
 +
| style="white-space: nowrap;"|31 May 2009  
 
| initial release
 
| initial release
 
|}
 
|}
  
==Requirements==
+
== Conflicts and Issues==  
 
+
No known conflicts.
* A working TNG installation.
 
* A backup of your TNG begin.php and admin/leftbanner.php (V7) or admin_leftbanner.php (V8) files.
 
* An installed current version of the [[Mod Manager]].
 
* This mod also requires that your admin folder be writeable.
 
  
==Automated Installation==
+
==Installation==
 +
# Uninstall and delete previous version of this mod (if installed)
 +
# Download the appropriate zip file as shown in the mod summary in the upper right corner of the page.
 +
# Extract the file from the downloaded zip file into the '''mods''' folder or FTP the extracted file to your mods folder.
 +
# Follow the normal automated installation for Mod Manager, as shown in  the example [[Mod Manager - Installing Config Files]] to install the mod.
  
# Download the appropriate mod configuration package as identified in the upper right status box.  
+
== In the event of a problem ==
# Extract and copy all files in the zip to your '''./admin/mod_folder (V7)''' or  '''./mods (V8)'''.
+
* Try using the [[Mod_Manager_-_Installing_Config_Files#Remove_Mod_Steps|Mod Manager Remove]] capability
# Follow the normal automated installation for [[Mod Manager]] mods.  This mod also requires that your admin folder be writeable.
+
* Copy the backup of the affected files back to your TNG directory
 +
* Contact us through the [https://tng.community/index.php?/forums/forum/21-addons/ TNG Community Forums].
  
 +
== Uninstalling the mod ==
 +
If  you want to completely '''Remove''' (uninstall) this mod and all its tables, you should
 +
# click the '''Uninstall''' button to uninstall the mod
 +
# click the '''Delete''' button to delete the config file from the mods folder.
  
== Side effects ==
+
== Upgrade ==
 
+
*Uninstall and eventually Delete the current Mod.
# As with most source code modifications, these changes will likely be overwritten during your next TNG revision upgrade and will need to be re-implemented.  (Using the [[Mod Manager]] greatly simplifies this process).
+
*Proceed as for an installation with the new Mod.
 
   
 
   
 
 
 
==Customizations==
 
==Customizations==
 
 
Although the default values in the check_access.php file generally work well, the parameters may be customized
 
Although the default values in the check_access.php file generally work well, the parameters may be customized
 
* visitor access speed detection
 
* visitor access speed detection
Line 147: Line 219:
 
* whether to only present a captcha once per session
 
* whether to only present a captcha once per session
 
* the schedule on which to show user messages
 
* the schedule on which to show user messages
 +
* the list of hosts/IPs to ignore as being fast hits
  
 
The above parameters may be changed by using the EDIT button in the Mod Manager Status Table for this mod.  Additionally, names of the valid search engine indexers may be added by editing the 'check_access.php' script.  
 
The above parameters may be changed by using the EDIT button in the Mod Manager Status Table for this mod.  Additionally, names of the valid search engine indexers may be added by editing the 'check_access.php' script.  
  
 
+
==Using the Messaging Feature==
==How do I use the Messaging Feature==
 
 
 
 
When viewing the site statistics page, locate the particular IP/Hostname of interest.  The numbered button in the Host Name column indicates how many views of the message are left.  If the number is 0, then clicking on the button will bring up a text edit box with a default message.  Edit this, or leave it as is and click ADD.  The page will refresh, highlight the Host Name in red, and indicate the number of message views remaining on the button.
 
When viewing the site statistics page, locate the particular IP/Hostname of interest.  The numbered button in the Host Name column indicates how many views of the message are left.  If the number is 0, then clicking on the button will bring up a text edit box with a default message.  Edit this, or leave it as is and click ADD.  The page will refresh, highlight the Host Name in red, and indicate the number of message views remaining on the button.
  
If you click a button with a non-zero on it, it will remove the message request.  
+
If you click a button with a non-zero on it, it will remove the message request.
  
 +
==BAN a specific IP address==
 +
If you have one of those pesky browsers that keep returning, and refuses to contact you or contribute, you might choose to BAN them from your site.  (This is not my choice of action, but it may suit some)  Clicking the 'B' button will result in that address being banned permanently.  To "undo" a ban, simply click the 'B' button again. The page will refresh and highlight the IP address in red if it is Banned.  Keep in mind that this is simply an IP ban.  Your annoying browser can simply go to another address and continue again.
  
 
+
==Remove old or low count entries==
==How do I BAN a specific IP address==
 
 
 
If you have one of those pesky browsers that keep returning, and refuses to contact you or contribute, you might choose to BAN them from your site.  (This is not my choice of action, but it may suit some)  Clicking the 'B' button will result in that address being banned permanently.  To "undo" a ban, simply click the 'B' button again. The page will refresh and highlight the IP address in red if it is Banned.  Keep in mind that this is simply an IP ban.  Your annoying browser can simply go to another address and continue again.
 
 
 
 
 
 
 
 
 
==How do I remove old entries, or the very low count accesses==
 
 
 
 
Table maintenance is provided while viewing the access table in the "Show Access" under the admin area.  Selecting either of the Date or Page Hit "Sort" buttons will display the "Del" option button to enable record deletions.  Clicking the "Del" button will display the access page with an individual button in each of the date or hit cells.  These cell buttons will immediately remove all table entries before the date selected, or all table entries with fewer page hits, depending on the "Del" operations that has been activated.
 
Table maintenance is provided while viewing the access table in the "Show Access" under the admin area.  Selecting either of the Date or Page Hit "Sort" buttons will display the "Del" option button to enable record deletions.  Clicking the "Del" button will display the access page with an individual button in each of the date or hit cells.  These cell buttons will immediately remove all table entries before the date selected, or all table entries with fewer page hits, depending on the "Del" operations that has been activated.
  
 +
==Optional CAPTCHA Challenge page==
 +
An additional feature may be added to the Rip Prevention to present a CAPTCHA challenge page after a specific number of page views by non registered users.  This is one more attempt to reduce the level of automated ripping.  Check out the [[Rip Challenge Mod]] if you would like to add this feature.
  
==Optional CAPTCHA Challenge page==
+
==Sites using this mod==
 +
If you download and install this mod, please add your TNG site to the table below:
  
An additional feature may be added to the Rip Prevention to present a CAPTCHA challenge page after a specific number of page views by non registered users.  This is one more attempt to reduce the level of automated ripping.  Check out the [[Rip Challenge Mod]] if you would like to add this feature.
+
{| border="0" cellspacing="1" cellpadding="2" class="wikitable" width="100%"
 +
|-
 +
! URL
 +
! User
 +
! Note
 +
! Mod-Version
 +
! TNG-Version
 +
! User-language
  
 +
|- style="vertical-align:top;"
 +
| [https://vanpeer.au Van Peer Project]
 +
| [[User:Edglimited|Drew McClenaghan]]
 +
| Private
 +
| 14​.0​.0​.2c
 +
| 14.0
 +
| EN
  
=='''In the event of a problem with your TNG site'''==
+
|- style="vertical-align:top;"
 +
| [https://schuster-pippersteiner.at/genealogie/index.php Schuster-Pippersteiner]
 +
| [https://tng.lythgoes.net/wiki/index.php/User:Pipsi Ingrid Schuster]
 +
| Public
 +
| 14.0.0.2c
 +
| 14.0
 +
| DE,EN,CS
  
# copy your backup begin.php to your base TNG folder
+
|- style="vertical-align:top;"
# copy your backup leftbanner.php file back to the admin sub folder
+
| [https://www.rgstrong-genes.com R G Strong Family Genealogy]
#* all should be well now
+
| [[User:Rgstrong|Russ Strong]]
 +
| Public
 +
| 14.0.0.3
 +
| 14.0.4
 +
| EN,DE,FR,NL
 +
|-
 +
|[https://slekt.solem.info Solem Genealogy]
 +
|[[User:JTS|Jan-Thore Solem]]
 +
|Private
 +
|14​.0​.0​.2c
 +
|14.0.2
 +
|EN, NO
 +
|-
 +
|[https://clan.chauvigne.info/ GénéaKat]
 +
|[[User:Katryne|Katryne]]
 +
|Public & Private
 +
|14​.0​.0​.2c
 +
|14.0.3
 +
|FR,EN
 +
|-
 +
|[https://theruegers.ca/ Dabbling in Genealogy]
 +
|[[User:jrueger| Jeff Rueger]]
 +
|Public & Private
 +
|14.0.0.2c
 +
|14.0.3
 +
|EN
 +
|-
 +
|[https://familyhistories.us Family HIstories]
 +
|[[User:Steve1200|Steven Davis]]
 +
|Public & Private
 +
|14.0.0.2c
 +
|14.0.3
 +
|EN
 +
|- style="vertical-align:top;"
 +
| [https://datschetzky.genealogenstammtisch.net Stammbaum der Familie Datschetzky]
 +
| style="white-space: nowrap;"|[[User:ChristianD|Christian Datschetzky]]
 +
| Public
 +
| 14.0.0.3
 +
| 14.0.3
 +
| DE, EN
 +
|-
 +
| [https://www.severijns.family/Severijns The Severijns / Timmer Familytree]
 +
| Rob Severijns
 +
| Public / Private
 +
| 14.0.0.3
 +
| 14.0.4
 +
| NL, EN
 +
|-
 +
|}
  
 +
[[Category:Mods for TNG v14]]
 
[[Category:Mods for TNG v13]]
 
[[Category:Mods for TNG v13]]
 
[[Category:Mods for TNG v12]]
 
[[Category:Mods for TNG v12]]
Line 189: Line 325:
 
[[Category:Mods for TNG v8]]
 
[[Category:Mods for TNG v8]]
 
[[Category:Mods for TNG v7]]
 
[[Category:Mods for TNG v7]]
 +
 +
[[Category:tng_begin.php mods]]
 +
[[Category:admin.php mods]]
 +
[[Category:admin_genconfig.php mods]]
 +
[[Category:admin_leftmenu.php mods]]
 +
[[Category:admin_backup.php mods]]
 +
[[Category:admin_optimize.php mods]]
 +
[[Category:admin_restore.php mods]]
 +
[[Category:admin_utilities.php mods]]
 +
[[Category:customconfig.php mods]]

Latest revision as of 21:41, 4 March 2024

Restricted Downloads of Rip Prevention Mod are restricted to logged in users. If you do not have a user account on the TNG Wiki use the Request Account link to request a user account Restricted
Caution If you have trouble downloading with Google Chrome, Vivaldi, Brave or other Chromium based browser, try using a right-click and select Open in new Window, then F5, or use another browser such as Firefox


Caution


Ambox notice.png The latest version of this mod uses the guidelines for TNG v12+ cust_text.php files. If you are using TNGv12+, and any cust_text.php file in this mod is marked with a Bad Target error, you need to update your cust_text.php files before you can install this mod. [Show instructions]

If you upgraded to TNGv12+, and did not update your cust_text.php files as instructed in the upgrade readme script, then you must use the TNG Mod Manager to update them. To do so:

  1. Go to Mod Manager, and select its "Recommended Updates" tab.
    (If the "Recommended Updates" tab is not visible, then go to the Mod Manager Options tab, select "Display Settings", and turn on the "Recommended Updates" tab.)
  2. Click the "Update" button in the "Recommended Updates" tab.
    Installed mods do not interfere with the update, and if you already have (or think you may have) run this update, it will not hurt for you to run it again.

[See details in the TNGv12 Change Impacts Article][Hide the instructions]

TNG 14.0
TNG 13.0
TNG 12.0


Rip Prevention Mod
Summary Prevents rapid access to site
Validation V8.1.2a is XHTML compliant.Valid-xhtml10.png
Mod Updated 15 Nov 2023
Download link For
TNG 14.0

Rip_prevention_v14.0.0.3
For
TNG 13.0
Rip_prevention_v13.0.0.2b
For
TNG 12.0
Rip_prevention_v12.0.0.0e
For
TNG 11.0.2
Rip_prevention_v11.0.2.0b
For
TNG 10.1.0
Rip_prevention_v10.1.0.0b
For
TNG 8.0

rip_prevention_v8.1.2a
Download stats See download statistics
Author(s) Brian McFadyen
Brent Hemphill
Homepage Rip Prevention Mod (This page)
Mod Support TNG Community Forums
Contact Developer TNG Community Forums
Latest Mod 14.0.0.3
Min TNG V 7.0.0
Max TNG V 14.0.0
Files modified
tng_begin.php
admin.php
admin_genconfig.php
admin_leftmenu.php
admin_backup.php
admin_optimize.php
admin_restore.php
admin_utilities.php
customconfig.php
Related Mods
Notes
May require customization

Purpose of the mod

This TNG modification includes several features:

  • Rip Prevention
It can help deter some of the automated processes that simply rip (copy) our sites for potential commercial gain. It monitors the time interval between visitor accesses. If the accesses are rapid and repeated, a warning is issued. If the accesses continue rapid and repeatedly, the visitor is temporarily banned and an explanation page is displayed. Warnings and bans are disabled for administrators.
A few rapid accesses will result in a warning page. Simply wait a few seconds and operation will return to normal. Repeated rapid access will result in a 60 second ban where an explanation page is displayed.
To deter those slow automated programs that scrape your site, you may optionally add a Rip Prevention Captcha challenge. If added, you may configure the number of visits within a specified time that you will be allowed before a graphical challenge is presented to confirm the visitor is human and not an automated program.
  • Site Access Statistics Page
In addition to the warning and ban pages, a simple access stats page is available on the admin page. The left banner will include an entry (in English) "Show Access" which will display the current stored access information. I have sorted it by Bans, Warnings, Total fast visits, and Total accesses. A button is included to optionally sort the information using alternate columns.
  • Custom Message to browsing IP address
Create a custom message to specific IP addresses that are browsing your site. This feature allows selection of the IP/Host that is viewing your site, adding a custom message, and monitoring whether they have viewed it or not. The custom message will be displayed for a selectable (1-9) page views, then disappear. The number of page views left will be displayed in the site statistics page. To view this in action, check the link above to the statistics page, sort by time, and your address should be at the top. Since you are not logged in as administrator, the messaging system will only work for your originating IP address/hostname. A default message (max 1000 characters) is included, but may be customized.
  • Specific Host Banning
Provides a convenient way to permanently ban specific user accesses based upon host name. This feature allows selection of specific host names on the "Show Access" page by using the "B"an button. Banned host names will be displayed with their IP address bolded in a red font. Clicking the "B"an button of a banned host name will remove the ban. Users logged in as admin will not be banned, but be careful. Banning your IP, then logging out will cause you to be banned. (You'll have to log in from an alternate IP and then unban yourself).

Developer

The Rip Prevention Mod was developed by Brian McFadyen.
The Rip Prevention Mod was updated for MySQLi support by Brent Hemphill. Table deletion, good indexer list, forcing admin only access, and some messaging updates by Steven Davis. French text provided by Katryne Chauvigné-Bourlaud. French text provided by Ingrid Schuster.

Requirements

  • A working TNG installation.
  • A backup of all affected files (see the list in the summary in the upper right corner of the page)
  • An installed current version of the Mod Manager.
  • This mod requires that your admin folder be writeable.

Revision History

Mod Version TNG Version Date Contents
14.0.0.3 14.0 15 Nov 2023 update mod for PHP 8.2, add an option for host/IP list to ignore fast hits from.
14.0.0.2c 14.0 29 Dec 2022 update mod for TNG 14.
13.0.0.2b 13.0 02 Jul 2021 update mod to fix a parse error.
13.0.0.2a 13.0 29 Jun 2021 update mod to fix a parse error, a few hidden characters in text strings, and fix some HTML validation issues.
13.0.0.2 13.0 27 Jun 2021 update mod to allow paging of the Show Access page. Added additional bots to the consolidation list. German text thanks to Ingrid Schuster.
13.0.0.1 13.0 08 Nov 2020 update mod for TNG 13. Added the ability to delete the table, fix issues with the messaging system, updated the good indexer list, updated to HTML5 validation, and make the text customizable language strings. Thanks to Steven Davis. French text thanks to Katryne Chauvigné-Bourlaud.
12.0.0.0e 12.0 09 Dec 2019 update mod to fix some PHP 7.4 notices. Also updated the ban and warning screens to HTML5 stylizing thanks to Randal Suire.
12.0.0.0d 12.0 22 Nov 2018 update mod to fix an issue with IPv6.
12.0.0.0b 12.0 14 Sep 2018 update mod to fix an issue with the Show Access being unreadable in Templates 9, 13, and 14. Also fixed a possible issue with the Click Counter II Email Notify mod.
11.0.2.0b 11.0.2 14 Sep 2018 update mod to fix an issue with the Show Access being unreadable in Templates 9, 13, and 14. Also fixed a possible issue with the Click Counter II Email Notify mod.
10.1.0.0b 10.1 14 Sep 2018 update mod to fix an issue with the Show Access being unreadable in Templates 9, 13, and 14. Also fixed a possible issue with the Click Counter II Email Notify mod.
12.0.0.0a 12.0 04 Sep 2018 update mod to add option for Rip Challenge Mod to only show once per session. Also added notes to options about hits being counted multiple times in instances of redirection.
11.0.2 11.0.2 08 Jun 2017 update mod to be MySQLi compatible. Also fixed some other deprecated functions that were used. Added user to the table. Added the functionality for a renamed extensions folder.
10.1 10.1 08 Jun 2017 update mod to be MySQLi compatible. Also fixed some other deprecated functions that were used. Added user to the table.
8.1.2a 8.1 01 Apr 2011 update mod to be XHTML compliant provided by Alan Craxford who made rip_ban.html and rip_warning.html XHTML compliant
8.1.2 8.1 30 May 2010 rip_prevention_v8.1.2 contains More corrections. Looks ok now
8.1.1 8.1 30 May 2011 Updates to Rip Package, fixed for V8.0 and new file structure
8.1.0 8.1 28 May 2010 updates for TNG V8
1.4 7.0 Jun 2009 misc updates
1.2 7.0 01 Jun 2009 updated with missing genlib modification to support Messaging to visitors
1.1 7.0 31 May 2009 initial release

Conflicts and Issues

No known conflicts.

Installation

  1. Uninstall and delete previous version of this mod (if installed)
  2. Download the appropriate zip file as shown in the mod summary in the upper right corner of the page.
  3. Extract the file from the downloaded zip file into the mods folder or FTP the extracted file to your mods folder.
  4. Follow the normal automated installation for Mod Manager, as shown in the example Mod Manager - Installing Config Files to install the mod.

In the event of a problem

Uninstalling the mod

If you want to completely Remove (uninstall) this mod and all its tables, you should

  1. click the Uninstall button to uninstall the mod
  2. click the Delete button to delete the config file from the mods folder.

Upgrade

  • Uninstall and eventually Delete the current Mod.
  • Proceed as for an installation with the new Mod.

Customizations

Although the default values in the check_access.php file generally work well, the parameters may be customized

  • visitor access speed detection
  • number of fast accesses before a warning is displayed
  • number of fast accesses before a ban is displayed
  • length of time for a visitor ban
  • number of visits within the specified time before a captcha challenge is presented
  • number of seconds (specified time) over which the number of visits is monitored
  • whether to only present a captcha once per session
  • the schedule on which to show user messages
  • the list of hosts/IPs to ignore as being fast hits

The above parameters may be changed by using the EDIT button in the Mod Manager Status Table for this mod. Additionally, names of the valid search engine indexers may be added by editing the 'check_access.php' script.

Using the Messaging Feature

When viewing the site statistics page, locate the particular IP/Hostname of interest. The numbered button in the Host Name column indicates how many views of the message are left. If the number is 0, then clicking on the button will bring up a text edit box with a default message. Edit this, or leave it as is and click ADD. The page will refresh, highlight the Host Name in red, and indicate the number of message views remaining on the button.

If you click a button with a non-zero on it, it will remove the message request.

BAN a specific IP address

If you have one of those pesky browsers that keep returning, and refuses to contact you or contribute, you might choose to BAN them from your site. (This is not my choice of action, but it may suit some) Clicking the 'B' button will result in that address being banned permanently. To "undo" a ban, simply click the 'B' button again. The page will refresh and highlight the IP address in red if it is Banned. Keep in mind that this is simply an IP ban. Your annoying browser can simply go to another address and continue again.

Remove old or low count entries

Table maintenance is provided while viewing the access table in the "Show Access" under the admin area. Selecting either of the Date or Page Hit "Sort" buttons will display the "Del" option button to enable record deletions. Clicking the "Del" button will display the access page with an individual button in each of the date or hit cells. These cell buttons will immediately remove all table entries before the date selected, or all table entries with fewer page hits, depending on the "Del" operations that has been activated.

Optional CAPTCHA Challenge page

An additional feature may be added to the Rip Prevention to present a CAPTCHA challenge page after a specific number of page views by non registered users. This is one more attempt to reduce the level of automated ripping. Check out the Rip Challenge Mod if you would like to add this feature.

Sites using this mod

If you download and install this mod, please add your TNG site to the table below:

URL User Note Mod-Version TNG-Version User-language
Van Peer Project Drew McClenaghan Private 14​.0​.0​.2c 14.0 EN
Schuster-Pippersteiner Ingrid Schuster Public 14.0.0.2c 14.0 DE,EN,CS
R G Strong Family Genealogy Russ Strong Public 14.0.0.3 14.0.4 EN,DE,FR,NL
Solem Genealogy Jan-Thore Solem Private 14​.0​.0​.2c 14.0.2 EN, NO
GénéaKat Katryne Public & Private 14​.0​.0​.2c 14.0.3 FR,EN
Dabbling in Genealogy Jeff Rueger Public & Private 14.0.0.2c 14.0.3 EN
Family HIstories Steven Davis Public & Private 14.0.0.2c 14.0.3 EN
Stammbaum der Familie Datschetzky Christian Datschetzky Public 14.0.0.3 14.0.3 DE, EN
The Severijns / Timmer Familytree Rob Severijns Public / Private 14.0.0.3 14.0.4 NL, EN