Skip to content

A multi-network gwebcache for peer-to-peer bootstrapping. Historically used for Gnutella and Gnutella2 clients.

License

Notifications You must be signed in to change notification settings

taisel/Beacon-GWebCache

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

--------------------------------------
Beacon Cache (Core 2)
--------------------------------------
Tested with PHP 5.2.9.
Recommended to run with the short tag '<?' configuration off.
PHP 5.2+ is highly recommended.
--------------------------------------
How to Install / Configure Automatically:
	- Open installer.php in your web browser.
		- Make sure you have part.txt for the initial install!
		- gwc.php will be created and will be the web application's file.
		- Delete installer.php when you're done, as it's not needed anymore after the install.
How To Configure Manually:
	- You must configure the settings within the gwc.php file.
		- within the settings class (should be at the top of the file).
--------------------------------------
For MySQL Users:
	- MySQL 5+ server recommended.
	- Have not tested on MySQL 4.X system, but it could work when 'mysql' (not 'mysqli') is used.
	- Please create the database for the cache in the dba server with the name specified at install.
	- Tables are generated automatically for you.
		- If you see initial ERROR lnes, these are normal (Should disappear after initial browsing of the web front).
			- These error lines are table creation after 'not found' type instance.
	- Persistent DBA Connection
		- Only the 'mysql' option has such (Option appears to have lost support in mysqli).
			- Useful to prevent too many connections being opened at once.
			- Though 'mysql' uses more archaic MySQL dba handling (So attempt 'mysqli' if you can).
		- If you're using 'mysqli', then try to raise the max. connections limit if you can.
			- Should not be a problem in 'mysqli' unless serious load is inbound into Beacon Cache.
--------------------------------------
WARNING: Make sure the part.txt file has been deleted after configuring / installing!
--------------------------------------
---Important!---
You need to seed your cache to other caches available for it to be known!
	- Seed your cache and other caches with your cache's URL by using the URL submits.
		- Submit by opening Beacon Cache, clicking on a network name, then submitting another cache's URL by the URL submission on the bottom.
--------------------------------------
For updating to a newer version, while using the existing settings:
	- If you installed Beacon Cache II through the intaller system.
		- Browse to the file update.php.
			- The file should either give a warning or say you are now updated.
				- The file keep_for_updates.php needs to exist for the updater to work.
					- A file that was generated by the last installation.
	- May not work if the update cannot be run due to compatibility problems.
		- An error will tell you if true.
--------------------------------------
List Of The Settings:
	STORAGE
		- What storage method should be used?
		- 'flat', 'mysql', or 'mysqli'
		- 'flat' is the regular file-system.
		- 'mysql' is the older MySQL support of PHP.
		- 'mysqli' is the newer MySQL support of PHP.
		- format: text
	FOLDER
		- Folder name for the GWC data.
		- format: text
	DBA_ADDRESS
		- SQL server address.
		- format: text
	DBA_USERNAME
		- SQL server username.
		- format: text
	DBA_PASSWORD
		- SQL server password.
		- format: text
	DBA_NAME
		- SQL server database for Beacon.
		- format: text
	STATS_CLIENT_FLUSH
		- Multiple of STATS_THROTTLE for which to clear the clients table.
		- format: integer (number)
	CACHE_ADDRESS
		- If included, this address will be enforced.
		- Makes sure that there are entries to the GWC through one address.
		- format: text
	HOSTS_IN
		- How many hosts to store.
		- format: integer (number)
	HOSTS_OUT
		- How many hosts to output.
		- format: integer (number)
	URLS_IN
		- How many URLs to store.
		- format: integer (number)
	URLS_OUT
		- How many URLs to output.
		- format: integer (number)
	BANNED_URLS_IN
		- How many temp. banned URLs to keep track of per network.
		- format: integer (number)
	SHUFFLE_HOSTS
		- Shall the cache shuffle hosts on output?
		- format: true / false
	SHUFFLE_URLS
		- Shall the cache shuffle URLs on output?
		- format: true / false
	EXPIRE_HOSTS
		- At how many hours shall a host expire?
		- It also is the minimum update time allowed for a host.
		- format: integer (number)
	EXPIRE_URLS
		- At how many hours shall a URL expire?
		- format: integer (number)
	EXPIRE_BANNED_URLS
		- At how many hours shall a temp. banned URL expire?
		- format: integer (number)
	ENABLE_V1
		- Shall the cache accept GWC specification 1 requests?
		- format: true / false
	ENABLE_V2
		- Shall the cache accept GWC specification 2 requests?
		- format: true / false
	ENABLE_V3
		- Shall the cache accept GWC XML requests?
		- format: true / false
	DEFAULT_NET
		- The defaulting network of this cache.
			- The network of specification 1.
			- The network of specification 2 when no network is present.
		- format: text
	FSOCKOPEN
		- Can this cache use sockets?
		- format: true / false
	IP_ALT_CACHES
		- Shall this cache accept IP addresses as URLs?
		- format: true / false
	NON_HTTP
		- Can this cache connect on ports other than port 80 for sockets?
		- format: true / false
	RETRY_URLS
		- Can the cache retry expired URLs?
		- format: true / false
	RETRY_BAD_URLS
		- Can the cache retry expired bad URLs?
		- format: true / false
	TIMEOUT
		- Timeout for the sockets.
		- format: integer (number)
	WEB_FRONT
		- Shall a web front be displayed?
		- format: true / false
	BLOCK_NO_USER_AGENT
		- Shall the cache block clients with no user agent header from updating an IP?
		- format: true / false
	BLOCK_NO_USER_AGENT_ALL
		- Shall the cache block clients with no user agent header completely?
		- format: true / false
	WEBFRONT_URL_ADDS
		- Shall the cache accept URL adds through the web front?
		- format: true / false
	ENABLE_HIT_STATS
		- Shall the cache keep track of hit rate statistics?
		- format: true / false
	ENABLE_CLIENT_STATS
		- Shall the cache keep track of client entry statistics?
		- format: true / false
	STATS_THROTTLE
		- How many clients shall be kept track of at any one time in the stats?
		- format: integer (number)
	ADD_URL_TO_SHAREAZA
		- This adds the extra link to each URL to let the user have the URL auto-entered into Shareaza.
		- format: true / false
	CHECKS_ALLOWED
		- This adds the extra link to each URL to let the user see a detailed debug of the selected cache.
		- format: true / false
	UPDATE_SELF_TO_REMOTE
		- Shall the cache update self-url to other GWCs?
		- format: true / false
	LOG_UPDATE_WARNINGS
		- Shall the cache log update warnings generated in the update class?
		- format: true / false
	LOG_BAN_WARNINGS
		- Shall the cache log ban warnings generated in the client check class?
		- format: true / false
	LOG_SPLIT_SIZE
		- The size of a log file in bytes at which a new one is generated.
		- format: integer (number)
		- size in bytes
	NETWORKS
		- List of allowed networks.
		- format: array (comma separated)
	BANNED
		- Banned IPs and IP ranges.
		- format: array (comma separated)
	VENDOR_CODE_BAN
		- Banned vendor codes.
		- format: array (comma separated)
	VENDOR_CODE_IP_UPDATE_BAN
		- Banned vendor codes from specifically updating IP addresses.
		- format: array (comma separated)
	BANNED_URLS
		- Used to ban bad URLs on a permanent basis...
		- format: array (comma separated)
	USER_AGENT_BAN
		- Banned user-agent headers.
		- format: array (comma separated)
	BROWSER_DETECT
		- User-agent matchings for browser detection.
		- Used to prevent IP updates through Internet browsers.
		- format: array (comma separated)
	NET_SPEC1
		- Used to isolate certain specification 1 clients to prevent network leakage.
		- format: array (comma separated)
			- Use this format: Client+Version=>Network
				- ex: 'MUTE'=>'mute','CRAP3.3'=>'crapnet'
	BAN_GDNA_CLONES
		- To block specific vendor codes that use the GDNA specific user-agent.
		- format: array (comma separated)
	IP_EXCEPTION
		- Which networks shall submitted IP addresses be ignored and replaced by server-detected IP addresses?
		- format: array (comma separated)
	NETWORKS_ALT
		- Alternate names for the implemented networks.
		- format: array (comma separated)
			- Use this format: Alternate Network=>Network
				- ex: 'gnutella1'=>'gnutella','g1'=>'gnutella','g'=>'gnutella2'
	BANNED_PONGS
		- Ban the pong responses of specific caches.
		- format: array (comma separated)
	WHITELIST_USER_AGENT
		- Create a whitelist to ban those who aren't on it.
		- format: array (comma separated)
			- Use this format: Network=>Good User-Agent
				 - ex: 'gnutella'=>'Phex'
	VENDOR_CODE_MATCHINGS
		- Vendor code to client name and URL matchings.
		- format: array (comma separated)
			- Use this format: (vendor code)=>array((Actual name), (URL or put a boolean false))
		- Is not in the installer, as it does not need tampering.
--------------------------------------
Visit the website for Beacon Cache at http://beacon.grantgalitz.com/
--------------------------------------

About

A multi-network gwebcache for peer-to-peer bootstrapping. Historically used for Gnutella and Gnutella2 clients.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published